|
各位大侠,本菜鸟有个问题不知怎么越过去
现在用C#+osg ax模式开发,ax中我用类pickhandler获取了鼠标点击场景的三维坐标,
ScenePosiClicked = picker->getFirstIntersection().localIntersectionPoint;
float posiX = ScenePosiClicked.x();
float posiY = ScenePosiClicked.y();
float posiZ = ScenePosiClicked.z();
CString CSposiX;
CSposiX.Format(L"%f", posiX);
CString CSposiY;
CSposiY.Format(L"%f", posiY);
CString CSposiZ;
CSposiZ.Format(L"%f", posiZ);
strPosi = CSposiX + (CString)", " + CSposiY + (CString)", " + CSposiZ; //strPosi定义为类pickhandler的全局变量
:ostMessage(CPublic::AxHwnd, MYMESSAGE, NULL, (LPARAM)strPosi);
发送到ax,然后ax触发一个事件把数据传给C#,实现方式:
LRESULT CGeoVRMFCAxCtrl::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
UpdateScenePosiClicked((LPCTSTR)lParam);
return true;
}
在UpdateScenePosiClicked里再用FireEvent把数据传出来,
问下大家,这个流程有什么问题吗?我现在调试时断点无法命中,只好问问各位大侠了。
先说谢谢了
|
|