本文整理汇总了C++中BNode::Draw方法的典型用法代码示例。如果您正苦于以下问题:C++ BNode::Draw方法的具体用法?C++ BNode::Draw怎么用?C++ BNode::Draw使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BNode
的用法示例。
在下文中一共展示了BNode::Draw方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Draw
//JAM 06Jan04
void BSubTree::Draw(void)
{
BNode *child;
TheStateStack.pCoords=pCoords; // SAVES POOLS
TheStateStack.pNormals=pNormals; // SAVES POOLS
if(SubTreeCount) NodeCount++; // Node Counter;
SubTreeCount=true;
CV->AddShaderNormals(nNormals);
/* TheStateStack.Light(pNormals,nNormals,pCoords); //- COBRA - RED - Call only if Normals available
if(nDynamicCoords == 0)
TheStateStack.Transform(pCoords,nCoords);
else
{
TheStateStack.Transform(pCoords,nCoords-nDynamicCoords);
TheStateStack.Transform(TheStateStack.CurrentInstance->DynamicCoords+DynamicCoordOffset,nDynamicCoords);
}*/
child = subTree;
// ShiAssert(FALSE == F4IsBadReadPtr( child, sizeof*child) );
do
{
child->Draw();
child = child->sibling;
}
while(child); // JB 010306 CTD
}
示例2: Draw
void BSplitterNode::Draw(void)
{
BNode *child;
ShiAssert( front );
ShiAssert( back );
if (A*TheStateStack.ObjSpaceEye.x +
B*TheStateStack.ObjSpaceEye.y +
C*TheStateStack.ObjSpaceEye.z + D > 0.0f) {
child = front;
do
{
child->Draw();
child = child->sibling;
} while (child);
child = back;
do
{
child->Draw();
child = child->sibling;
} while (child);
}
else
{
child = back;
do
{
child->Draw();
child = child->sibling;
} while (child);
child = front;
do
{
child->Draw();
child = child->sibling;
} while (child);
}
}