Blender V2.61 - r43446
|
Trimesh primitive manager. More...
#include <btGImpactShape.h>
Public Member Functions | |
TrimeshPrimitiveManager () | |
TrimeshPrimitiveManager (const TrimeshPrimitiveManager &manager) | |
TrimeshPrimitiveManager (btStridingMeshInterface *meshInterface, int part) | |
virtual | ~TrimeshPrimitiveManager () |
void | lock () |
void | unlock () |
virtual bool | is_trimesh () const |
determines if this manager consist on only triangles, which special case will be optimized | |
virtual int | get_primitive_count () const |
SIMD_FORCE_INLINE int | get_vertex_count () const |
SIMD_FORCE_INLINE void | get_indices (int face_index, int &i0, int &i1, int &i2) const |
SIMD_FORCE_INLINE void | get_vertex (int vertex_index, btVector3 &vertex) const |
virtual void | get_primitive_box (int prim_index, btAABB &primbox) const |
virtual void | get_primitive_triangle (int prim_index, btPrimitiveTriangle &triangle) const |
retrieves only the points of the triangle, and the collision margin | |
SIMD_FORCE_INLINE void | get_bullet_triangle (int prim_index, btTriangleShapeEx &triangle) const |
Public Attributes | |
btScalar | m_margin |
btStridingMeshInterface * | m_meshInterface |
btVector3 | m_scale |
int | m_part |
int | m_lock_count |
const unsigned char * | vertexbase |
int | numverts |
PHY_ScalarType | type |
int | stride |
const unsigned char * | indexbase |
int | indexstride |
int | numfaces |
PHY_ScalarType | indicestype |
Trimesh primitive manager.
Manages the info from btStridingMeshInterface object and controls the Lock/Unlock mechanism
Definition at line 528 of file btGImpactShape.h.
btGImpactMeshShapePart::TrimeshPrimitiveManager::TrimeshPrimitiveManager | ( | ) | [inline] |
Definition at line 545 of file btGImpactShape.h.
References indexbase, indexstride, m_lock_count, m_margin, m_meshInterface, m_part, m_scale, NULL, numfaces, numverts, stride, and vertexbase.
btGImpactMeshShapePart::TrimeshPrimitiveManager::TrimeshPrimitiveManager | ( | const TrimeshPrimitiveManager & | manager | ) | [inline] |
Definition at line 560 of file btGImpactShape.h.
References indexbase, indexstride, m_lock_count, m_margin, m_meshInterface, m_part, m_scale, numfaces, numverts, stride, and vertexbase.
btGImpactMeshShapePart::TrimeshPrimitiveManager::TrimeshPrimitiveManager | ( | btStridingMeshInterface * | meshInterface, |
int | part | ||
) | [inline] |
Definition at line 577 of file btGImpactShape.h.
References btStridingMeshInterface::getScaling(), indexbase, indexstride, m_lock_count, m_margin, m_meshInterface, m_part, m_scale, numfaces, numverts, stride, and vertexbase.
virtual btGImpactMeshShapePart::TrimeshPrimitiveManager::~TrimeshPrimitiveManager | ( | ) | [inline, virtual] |
Definition at line 594 of file btGImpactShape.h.
SIMD_FORCE_INLINE void btGImpactMeshShapePart::TrimeshPrimitiveManager::get_bullet_triangle | ( | int | prim_index, |
btTriangleShapeEx & | triangle | ||
) | const [inline] |
Definition at line 693 of file btGImpactShape.h.
References get_indices(), get_vertex(), indices, and m_margin.
Referenced by btGImpactMeshShapePart::getBulletTriangle().
SIMD_FORCE_INLINE void btGImpactMeshShapePart::TrimeshPrimitiveManager::get_indices | ( | int | face_index, |
int & | i0, | ||
int & | i1, | ||
int & | i2 | ||
) | const [inline] |
Definition at line 638 of file btGImpactShape.h.
References indexbase, indexstride, indicestype, and PHY_SHORT.
Referenced by get_bullet_triangle(), and get_primitive_triangle().
virtual void btGImpactMeshShapePart::TrimeshPrimitiveManager::get_primitive_box | ( | int | prim_index, |
btAABB & | primbox | ||
) | const [inline, virtual] |
Implements btPrimitiveManagerBase.
Definition at line 674 of file btGImpactShape.h.
References get_primitive_triangle(), btPrimitiveTriangle::m_margin, and btPrimitiveTriangle::m_vertices.
virtual int btGImpactMeshShapePart::TrimeshPrimitiveManager::get_primitive_count | ( | ) | const [inline, virtual] |
Implements btPrimitiveManagerBase.
Definition at line 628 of file btGImpactShape.h.
References numfaces.
Referenced by btGImpactMeshShapePart::getNumChildShapes().
virtual void btGImpactMeshShapePart::TrimeshPrimitiveManager::get_primitive_triangle | ( | int | prim_index, |
btPrimitiveTriangle & | triangle | ||
) | const [inline, virtual] |
retrieves only the points of the triangle, and the collision margin
Implements btPrimitiveManagerBase.
Definition at line 683 of file btGImpactShape.h.
References get_indices(), get_vertex(), indices, btPrimitiveTriangle::m_margin, m_margin, and btPrimitiveTriangle::m_vertices.
Referenced by get_primitive_box().
SIMD_FORCE_INLINE void btGImpactMeshShapePart::TrimeshPrimitiveManager::get_vertex | ( | int | vertex_index, |
btVector3 & | vertex | ||
) | const [inline] |
Definition at line 656 of file btGImpactShape.h.
References m_scale, PHY_DOUBLE, stride, type, and vertexbase.
Referenced by get_bullet_triangle(), get_primitive_triangle(), and btGImpactMeshShapePart::getVertex().
SIMD_FORCE_INLINE int btGImpactMeshShapePart::TrimeshPrimitiveManager::get_vertex_count | ( | ) | const [inline] |
Definition at line 633 of file btGImpactShape.h.
References numverts.
Referenced by btGImpactMeshShapePart::getVertexCount().
virtual bool btGImpactMeshShapePart::TrimeshPrimitiveManager::is_trimesh | ( | ) | const [inline, virtual] |
determines if this manager consist on only triangles, which special case will be optimized
Implements btPrimitiveManagerBase.
Definition at line 623 of file btGImpactShape.h.
void btGImpactMeshShapePart::TrimeshPrimitiveManager::lock | ( | ) | [inline] |
Definition at line 596 of file btGImpactShape.h.
References btStridingMeshInterface::getLockedReadOnlyVertexIndexBase(), indexbase, indexstride, indicestype, m_lock_count, m_meshInterface, m_part, numfaces, numverts, stride, type, and vertexbase.
Referenced by btGImpactMeshShapePart::lockChildShapes().
void btGImpactMeshShapePart::TrimeshPrimitiveManager::unlock | ( | ) | [inline] |
Definition at line 610 of file btGImpactShape.h.
References m_lock_count, m_meshInterface, m_part, NULL, btStridingMeshInterface::unLockReadOnlyVertexBase(), and vertexbase.
Referenced by btGImpactMeshShapePart::unlockChildShapes().
const unsigned char* btGImpactMeshShapePart::TrimeshPrimitiveManager::indexbase |
Definition at line 540 of file btGImpactShape.h.
Referenced by get_indices(), lock(), and TrimeshPrimitiveManager().
Definition at line 541 of file btGImpactShape.h.
Referenced by get_indices(), lock(), and TrimeshPrimitiveManager().
Definition at line 543 of file btGImpactShape.h.
Referenced by get_indices(), and lock().
Definition at line 535 of file btGImpactShape.h.
Referenced by lock(), TrimeshPrimitiveManager(), and unlock().
Definition at line 531 of file btGImpactShape.h.
Referenced by get_bullet_triangle(), get_primitive_triangle(), btGImpactMeshShapePart::getMargin(), btGImpactMeshShapePart::setMargin(), and TrimeshPrimitiveManager().
Definition at line 532 of file btGImpactShape.h.
Referenced by btGImpactMeshShapePart::btGImpactMeshShapePart(), lock(), TrimeshPrimitiveManager(), and unlock().
Definition at line 534 of file btGImpactShape.h.
Referenced by btGImpactMeshShapePart::btGImpactMeshShapePart(), btGImpactMeshShapePart::getPart(), lock(), TrimeshPrimitiveManager(), and unlock().
Definition at line 533 of file btGImpactShape.h.
Referenced by get_vertex(), btGImpactMeshShapePart::getLocalScaling(), btGImpactMeshShapePart::setLocalScaling(), and TrimeshPrimitiveManager().
Definition at line 542 of file btGImpactShape.h.
Referenced by get_primitive_count(), lock(), and TrimeshPrimitiveManager().
Definition at line 537 of file btGImpactShape.h.
Referenced by get_vertex_count(), lock(), and TrimeshPrimitiveManager().
Definition at line 539 of file btGImpactShape.h.
Referenced by get_vertex(), lock(), and TrimeshPrimitiveManager().
Definition at line 538 of file btGImpactShape.h.
Referenced by get_vertex(), and lock().
const unsigned char* btGImpactMeshShapePart::TrimeshPrimitiveManager::vertexbase |
Definition at line 536 of file btGImpactShape.h.
Referenced by get_vertex(), lock(), TrimeshPrimitiveManager(), and unlock().