[HOOPS]二维点向三维空间投影
Tag: hoops
当鼠标移动的时候,产生的是屏幕坐标的变化。
若是要使得三维空间选中的某个体/面/线也随着移动,就需要将二维点向三维空间投影。
投影时候需要被投向的面的信息:点+面法线
获取具体如下:
HPoint _Compute_Proj_Point(const SPAposition& plane_pt,
const SPAunit_vector& plane_v,HEventInfo& event)
{
HC_KEY key = event.GetView()->GetSceneKey();
HPoint new_pos = event.GetMouseWorldPos();
float x,y,z;
float tx,ty,tz;
HC_Open_Segment_By_Key(key);
{
HC_Show_Net_Camera_Position(&x,&y,&z);
HC_Show_Net_Camera_Target(&tx,&ty,&tz);
}
HC_Close_Segment();