Я изменяю пример проекта 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.
...
}
Исключение возникает при выполнении ④, я думаю, что поза неверна.
Моя цель, как показано ниже,
Создайте новый якорь, относительно позиции якоря, я надеюсь, что это центр экрана с точки зрения телефона, а расстояние между камерой и якорем составляет 2 метра в точке трехмерного мира.
Как определить эту позу?