本文整理汇总了C++中GLC_Matrix4x4::type方法的典型用法代码示例。如果您正苦于以下问题:C++ GLC_Matrix4x4::type方法的具体用法?C++ GLC_Matrix4x4::type怎么用?C++ GLC_Matrix4x4::type使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GLC_Matrix4x4
的用法示例。
在下文中一共展示了GLC_Matrix4x4::type方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
QList<Lib3dsMesh*> GLC_WorldTo3ds::createMeshsFrom3DRep(GLC_3DRep* pRep, const QString& name, const GLC_Matrix4x4& matrix)
{
QList<Lib3dsMesh*> subject;
int bodyIndex= 0;
const int bodyCount= pRep->numberOfBody();
for (int i= 0; i < bodyCount; ++i)
{
GLC_Mesh* pCurrentMesh= dynamic_cast<GLC_Mesh*>(pRep->geomAt(i));
if ((NULL != pCurrentMesh) && !pCurrentMesh->isEmpty())
{
bool deleteCurrentMesh= false;
if (pCurrentMesh->lodCount() > 1)
{
// Keep only the first level of detail
pCurrentMesh= pCurrentMesh->createMeshOfGivenLod(0);
deleteCurrentMesh= true;
}
const QString bodyMeshName= name + '_' + QString::number(bodyIndex++);
if (matrix.type() != GLC_Matrix4x4::Identity)
{
if (!deleteCurrentMesh)
{
pCurrentMesh= new GLC_Mesh(*pCurrentMesh);
deleteCurrentMesh= true;
}
pCurrentMesh->transformVertice(matrix);
Q_ASSERT(!pCurrentMesh->isEmpty());
}
Lib3dsMesh* p3dsMesh= create3dsMeshFromGLC_Mesh(pCurrentMesh, bodyMeshName);
if (deleteCurrentMesh) delete pCurrentMesh;
subject.append(p3dsMesh);
}
}
return subject;
}