![]() |
【转帖】viewports Center Point In Model Space
viewport's center point in model space
viewport's center point in model space i am using the following code to determine viewport's center point in model space: code: // model space center of paper space viewport odgepoint3d camtarget = pviewport->viewtarget(); odgevector3d camtargetvec(camtarget.x,camtarget.y,camtarget.z); odgevector3d viewdir = pviewport->viewdirection(); odgematrix3d xform = odgematrix3d::planetoworld(viewdir) * odgematrix3d::rotation(pviewport->twistangle(),odgevector3d::kzaxis); odgevector3d xvec = xform.getcsxaxis(); odgevector3d yvec = xform.getcsyaxis(); odgepoint2d center = pviewport->viewcenter(); odgevector3d wcenter = camtargetvec + viewdir + xvec * center.x + yvec * center.y; there is something wrong with the code because for the attached file (viewcenter.dwg) wcenter is (-60009,19104,37) when it should be (106474,-11683,0). where is the error? attached files solution? this seems to work: code: // model space center of paper space viewport odabstractviewpeptr pview(pviewport); odgepoint3d viewcenter = pview->target(pviewport); viewcenter = viewcenter.project(odgeplane::kxyplane, pview->direction(pviewport)); can i trust that the above code always gives the right center point? |
所有的时间均为北京时间。 现在的时间是 12:02 AM. |