Цель Android Arcore Plane Tracker

На форумах ничего не могу найти и хотелось бы умудриться создать цель на аркоре интегрированную в плоскость, типа Measure. (Избегает задержки с изображением, сосредоточенным на макете)

У вас есть отправная точка?

Я думаю об этом! но не оставайтесь в центре

 com.google.ar.sceneform.Camera camera = arFragment.getArSceneView().getScene().getCamera();
    MaterialFactory.makeTransparentWithColor(MainActivity.this, new com.google.ar.sceneform.rendering.Color(Color.parseColor("#ff333d")))
            .thenAccept(material -> {
                nodeRenderable = ShapeFactory.makeSphere(0.008f, new Vector3(camera.getWorldPosition().x, camera.getWorldPosition().y,  camera.getWorldPosition().z), material);

введите здесь описание изображения


person Croid    schedule 07.05.2020    source источник


Ответы (1)


Что вам нужно сделать, так это создать узел и добавить его в качестве дочернего элемента сцены.

Затем на каждом Node.onUpdate(FrameTime) выполните следующие действия.

  • Выполните hitTest из центра ArSceneView.
  • Найдите первый HitResult, являющийся плоскостью, и isPoseInPolygon() == true
  • Обновите узлы worldPosition и worldRotation, чтобы они соответствовали перемещению и вращению положения удара.

Вы можете взглянуть на этот класс Reticle, который делает именно это: ar_toolbox/Settings.kt#L124-L185" rel="nofollow noreferrer">https://github.com/SimonMarquis/AR-Toolbox/blob/fb31a9cfdf061104a4401cecc9bc73ffa7ad33e6/app/src/main/java/fr/smarquis/ar_toolbox/Settings .kt#L124–L185

person Simon Marquis    schedule 08.05.2020