如何通过 session.createAnchor 创建锚点

How to create anchor by session.createAnchor

我修改了示例 HelloAR 项目。 将以下源代码添加到函数 OnDrawFrame()

 public void onDrawFrame(GL10 gl) {
 ...
  Camera camera = frame.getCamera();
  //test code
  if(show) {
    show = false;
    Pose p = camera.getPose(); //Get camera pose
    Pose locpose = Pose.makeTranslation(0.0f, 0.0f, -2.0f);//define a translation
    targetpose = p.compose(locpose); //make a new pose based on camera pose
    ④anchors.add(session.createAnchor(targetpose)); //add a new anchor
  }

  // Handle taps. Handling only one tap per frame, as taps are usually low frequency
  // compared to frame rate.
...
}

执行④时出现异常,我认为pose不正确。 我的目标如下, 新建一个主播,关于主播的位置,我希望在phone的视角是屏幕中心,在3D世界的视角下相机和主播的距离是2米。

如何定义那个姿势?

我找到了根本原因:测试代码执行得太早了,当创建了一些点云,然后执行测试代码时,创建了一个新的锚点。我会关闭这个问题