ARCore - Как установить масштаб по умолчанию для трансформируемого узла? - PullRequest
0 голосов
/ 16 мая 2018

Я использую Transformable узел и могу установить минимальное и максимальное значения шкалы. Но я использую модель, размер которой по умолчанию намного больше, поэтому я должен использовать жесты, чтобы сделать ее маленькой.

Как установить масштаб по умолчанию для модели / трансформируемого узла?

Ответы [ 2 ]

0 голосов
/ 22 апреля 2019

Вы можете легко использовать этот код для установки масштаба по умолчанию для трансформируемых узлов:

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();
0 голосов
/ 17 мая 2018

Я думаю, вы можете использовать метод setLocalScale TransformableNode, прежде чем он установит фактический Renderable. как код ниже

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, тогда он выглядит лучше

...