我有一张带有跟踪器和矩形的纸张,用户可以用现实生活中的铅笔画一条黑线。在我的程序中,我从飞机上得到一个位图,其中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(画一个三角形而不是一个球抱歉)
亲切的问候,
答案 0 :(得分:0)
您可以使用get3dPositionFromScreenCoordinates查找w.r.t的3d坐标。目标平面并使用返回值转换几何体(即球)。
请在metaio HelpDesk上发布此类问题以获得更好的回复。