我正在使用Transformable
节点并且能够设置最小和最大比例值。但我使用的模型的默认尺寸要大得多,所以我必须使用手势使其变小。
如何设置模型/可变形节点的默认比例值?
我正在使用Transformable
节点并且能够设置最小和最大比例值。但我使用的模型的默认尺寸要大得多,所以我必须使用手势使其变小。
如何设置模型/可变形节点的默认比例值?
我认为您可以在设置实际 Renderable 之前使用 TransformableNode 的 setLocalScale 方法。像下面的代码
TransformableNode andy = new TransformableNode(arFragment.getTransformationSystem());
andy.setLocalScale(new Vector3(0.1f, 0.1f, 0.1f));
andy.setParent(anchorNode);
andy.setRenderable(andyRenderable);
andy.select();
我用 0.1f 表示 x,y,z 值,然后看起来更好
您可以轻松地使用此代码为可转换节点设置默认比例:
TransformationSystem arTS;
arTS = MainActivity.getArFragment().getTransformationSystem();
TransformableNode node = new TransformableNode(arTS);
node.setRenderable(modelRenderable);
node.getScaleController().setMinScale(0.1999f);
node.getScaleController().setMaxScale(0.2000f);
node.setLocalScale(exhibit.getModelScale());
node.setLocalPosition(exhibit.getModelPosition());
//node.setParent(anchorNode);
node.setParent(sceneView.getScene());
node.getRotationController().setEnabled(true);
node.getScaleController().setEnabled(true);
sceneView.getScene().addChild(node);
node.select();
在您的 .sfa 文件中,更改 scale 的默认值,然后加载模型并重新构建应用程序
恕我直言,为节点设置默认比例的最简单方法是在 sfa 文件中定义 3d 模型的比例属性