本文整理汇总了C++中SbViewVolume::getSightPoint方法的典型用法代码示例。如果您正苦于以下问题:C++ SbViewVolume::getSightPoint方法的具体用法?C++ SbViewVolume::getSightPoint怎么用?C++ SbViewVolume::getSightPoint使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SbViewVolume
的用法示例。
在下文中一共展示了SbViewVolume::getSightPoint方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GLRender
void SoXipGetCameraProperties::GLRender(SoGLRenderAction* action)
{
/*
SbMatrix mMV = SoModelMatrixElement::get(action->getState()) * SoViewingMatrixElement::get(action->getState());
SbMatrix mv = mMV.transpose();
mv = mv.inverse();
SbVec3f cc(0.0,0.0,0.0);
SbVec3f wc;
mv.multMatrixVec(cc, wc);
*/
SbViewVolume vv = SoViewVolumeElement::get( action->getState() );
mCamPos = vv.getSightPoint(0.0);
if (mCamPos != camPos.getValue())
camPos.setValue( mCamPos );
mCamDir = vv.getSightPoint(1.0) - vv.getSightPoint(0.0);
if (mCamDir != camDir.getValue() )
camDir.setValue( mCamDir );
SbViewportRegion vpr = SoViewportRegionElement::get( action->getState() );
SbVec2s orig = vpr.getViewportOriginPixels();
SbVec2s wh = vpr.getViewportSizePixels();
SbVec4f vp = SbVec4f( (float)orig[0], (float)orig[1], (float)wh[0], (float)wh[1] );
mViewport = vp;
if (mViewport != viewport.getValue())
viewport.setValue( mViewport );
}