Дополненная реальность положение шарик на линии (metaio sdk)

У меня есть бумага с трекером и прямоугольником, где пользователь может нарисовать карандашом в реальной жизни черную линию. В моей программе я получил растровое изображение с плоскости, где true — это черный, а false — белый, поэтому я могу использовать это растровое изображение, чтобы установить шар на линии.

Вот в чем проблема: при поиске черных пикселей я получаю правильные шнуры для растрового изображения, но при размещении шара с помощью metaio шар находится не в нужном месте, он не на линии, а намного выше.

for(column = 0; column < width && !stop; column++)
{
for(row = 0; row < height && !stop; row++)
{
if (bitmap[row][column])
stop = true;
}
}

if (stop)
{
m_geometry->setTranslation(metaio::Vector3d(-m_x,-m_y,0));
m_y = (0 - 160 - column);
m_x = row;
m_geometry->setTranslation(metaio::Vector3d(m_x,m_y,0));
cout << m_geometry->getTranslation().x << " " << m_geometry->getTranslation().y << " "<< m_geometry->getTranslation().z << endl;
}

Может кто-то помочь мне с этим? Я нарисовал ситуацию в краске, чтобы вы поняли.

http://img195.imageshack.us/img195/4945/naamlooszw.png (нарисован треугольник вместо шара извините)

С уважением,

1

Решение

Ты можешь использовать get3dPositionFromScreenCoordinates чтобы найти 3D-координаты w.r.t. целевую плоскость и переведите свою геометрию (то есть шар) с возвращенным значением.

Пожалуйста, опубликуйте подобные вопросы на metaio HelpDesk для лучшего ответа.

0

Другие решения

Других решений пока нет …