当前位置: 首页>>代码示例>>C++>>正文


C++ BaseNode::hull方法代码示例

本文整理汇总了C++中BaseNode::hull方法的典型用法代码示例。如果您正苦于以下问题:C++ BaseNode::hull方法的具体用法?C++ BaseNode::hull怎么用?C++ BaseNode::hull使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在BaseNode的用法示例。


在下文中一共展示了BaseNode::hull方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: OnCameraZoomextents

void CSceneRender::OnCameraZoomextents() 
{
	ScenePort * pDoc = dynamic_cast<ScenePort *>( GetDocument() );
	ASSERT( pDoc );

	m_TargetPosition = Vector3(0,0,0);
	m_TargetDistance = 50.0f;

	if ( pDoc->m_pSelectedNode )
	{
		// find the world position of the selected node
		BaseNode * pBaseNode = pDoc->m_pSelectedNode->getCachedNode();
		if ( pBaseNode )
		{
			// get the hull of the selected node
			BoxHull hull( pBaseNode->hull() );

			Vector3 position( 0.0f );
			while( pBaseNode )
			{
				if ( dynamic_cast< NodeTransform * >( pBaseNode ) )
				{
					NodeTransform * pNode = (NodeTransform *)pBaseNode;
					position = (~pNode->frame() * position) + pNode->position();
				}
				pBaseNode = pBaseNode->parent();
			}

			m_TargetPosition = position;
			m_TargetDistance = hull.radius() * 2.0f;
		}
	}

	// redraw the scene
	OnUpdate(this,true,NULL);
	OnDraw(NULL);
}
开发者ID:BlackYoup,项目名称:medusa,代码行数:37,代码来源:SceneRender.cpp


注:本文中的BaseNode::hull方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。