本文整理汇总了C++中Box3::extendBy方法的典型用法代码示例。如果您正苦于以下问题:C++ Box3::extendBy方法的具体用法?C++ Box3::extendBy怎么用?C++ Box3::extendBy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Box3
的用法示例。
在下文中一共展示了Box3::extendBy方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: transform
//! Transforms Box3 by matrix, enlarging Box3 to contain result.
void transform(const Matrix4<Type> & m)
{
// a transformed empty box is still empty
if(isEmpty()) return;
Vec3<Type> corners[8];
corners[0] = m_min;
corners[1][0] = m_min[0]; corners[1][1] = m_max[1]; corners[1][2] = m_min[2];
corners[2][0] = m_max[0]; corners[2][1] = m_max[1]; corners[2][2] = m_min[2];
corners[3][0] = m_max[0]; corners[3][1] = m_min[1]; corners[3][2] = m_min[2];
corners[4] = m_max;
corners[5][0] = m_min[0]; corners[5][1] = m_max[1]; corners[5][2] = m_max[2];
corners[6][0] = m_min[0]; corners[6][1] = m_min[1]; corners[6][2] = m_max[2];
corners[7][0] = m_max[0]; corners[7][1] = m_min[1]; corners[7][2] = m_max[2];
Box3<Type> newbox;
for(int i = 0; i < 8; ++i){
m.multVecMatrix(corners[i], corners[i]);
newbox.extendBy(corners[i]);
}
setBounds(newbox.m_min, newbox.m_max);
}