ARCore: Как создать привязку из объекта сеанса без отслеживания плоскости? - PullRequest
0 голосов
/ 03 декабря 2018

Я пытался сделать это, но я получаю NotTrackingException, когда я пытаюсь выполнить следующие действия:

    Pose pose = Pose.makeTranslation(-0.41058916f, -0.6668466f, 0.04225248f);

    Anchor anchor = arFragment.getArSceneView().getSession().createAnchor(pose);

или

    Pose pose = Pose.makeTranslation(-0.41058916f, -0.6668466f, 0.04225248f);

    Anchor anchor =new Session(this).createAnchor(pose);

1 Ответ

0 голосов
/ 04 декабря 2018

Есть несколько способов установить привязку в сцене Arcore.Один из способов, который звучит так, как если бы он соответствовал вашим потребностям, - это установить положение привязки относительно фокуса камеры - см. Этот ответ, который протестирован и работает:

Код ключа, создающий привязку из объекта сеанса:

          //Add an Anchor and a renderable in front of the camera       
          Session session = arFragment.getArSceneView().getSession();
          float[] pos = { 0,0,-1 };
          float[] rotation = {0,0,0,1};
          Anchor anchor =  session.createAnchor(new Pose(pos, rotation));
          anchorNode = new AnchorNode(anchor);
          anchorNode.setRenderable(andyRenderable);
          anchorNode.setParent(arFragment.getArSceneView().getScene());

Если вы посмотрите на некоторые другие ответы на этот вопрос, вы также увидите альтернативное, не запланированное отслеживание, подходит и.

...