[英]ARCore – Disable a movement of ModelRenderable
Here is the piece of code using which I am able to place the model.这是我能够放置模型的一段代码。
private void addNodeToScene(ArFragment fragment, Anchor createAnchor, ModelRenderable renderable) {
AnchorNode anchorNode = new AnchorNode(createAnchor);
TransformableNode transformableNode = new TransformableNode(fragment.getTransformationSystem());
transformableNode.setName("box");
transformableNode.setRenderable(renderable);
transformableNode.setParent(anchorNode);
fragment.getArSceneView().getScene().addChild(anchorNode);
transformableNode.setOnTapListener((hitTestResult, motionEvent) -> {
if(callback != null) {
callback.onGiftClick(hitTestResult.getNode());
}
});
transformableNode.select();
}
But once the model is placed, I can move the model around.但是一旦模型放置好,我就可以四处移动模型。
Is there any way I can disable the user from moving the model around once it has been placed?有什么方法可以禁止用户在放置模型后四处移动模型?
replace your TransformableNode with a Node.用一个节点替换你的 TransformableNode。
TransformableNode transformableNode = new TransformableNode(fragment.getTransformationSystem());
becomes变成
Node myNode = new Node();
you won't be able to move it then anymore你将无法再移动它
Some things work differently with Nodes as opposed to TransformableNodes -> The constructor being empty.与 TransformableNodes 相反,Nodes 的某些工作方式有所不同 -> 构造函数为空。
如果你想保留 TransforableNode,你可以使用以下标志
transformableNode.getTranslationController().setEnabled(false);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.