Я установил 2 якоря.Расстояние, рассчитанное между двумя якорями, довольно точное.Переводя эти якорные позы в точки экрана (worldToScreenPoint), расстояние, рассчитанное с использованием 2D (x, y) точек, больше на 8 см.
Я что-то упустил?
Vector3 vecCoord;
Pose pose;
for (int nIndex = 0; nIndex < nItems; nIndex++)
{
pose = listAnchors.get(nIndex).getPose();
m_vecPose.x = pose.tx();
m_vecPose.y = pose.ty();
m_vecPose.z = pose.tz();
vecCoord = camera.worldToScreenPoint(m_vecArcorePose);
}
listAnchors содержитзахваченные якоря.
Расчет расстояния между двумя позами (например, listAnchors.get(nIndex).getPose()
и listAnchors.get(nIndex+1).getPose()
) получается точным.Расчет расстояния между точками экрана этих якорей (полученный в vecCoord) является неточным.