ScummVM API documentation
dgCollisionMesh::dgCollisionConvexPolygon Class Reference
Inheritance diagram for dgCollisionMesh::dgCollisionConvexPolygon:
dgCollisionConvex dgCollision

Public Member Functions

 dgCollisionConvexPolygon (dgMemoryAllocator *const allocator)
 
virtual dgInt32 CalculateSignature () const
 
virtual void Serialize (dgSerialize callback, void *const userData) const
 
virtual void SetCollisionBBox (const dgVector &p0, const dgVector &p1)
 
virtual dgFloat32 RayCast (const dgVector &localP0, const dgVector &localP1, dgContactPoint &contactOut, OnRayPrecastAction preFilter, const dgBody *const body, void *const userData) const
 
virtual bool OOBBTest (const dgMatrix &matrix, const dgCollisionConvex *const shape, void *const cacheOrder) const
 
virtual dgVector SupportVertex (const dgVector &dir) const
 
virtual dgVector SupportVertexSimd (const dgVector &dir) const
 
virtual dgInt32 CalculatePlaneIntersection (const dgVector &normal, const dgVector &point, dgVector *const contactsOut) const
 
virtual dgInt32 CalculatePlaneIntersectionSimd (const dgVector &normal, const dgVector &point, dgVector *const contactsOut) const
 
virtual dgFloat32 GetVolume () const
 
virtual dgFloat32 GetBoxMinRadius () const
 
virtual dgFloat32 GetBoxMaxRadius () const
 
virtual void CalculateInertia (dgVector &inertia, dgVector &origin) const
 
virtual bool IsEdgeIntersection () const
 
void BeamClipping (const dgCollisionConvex *const hull, const dgMatrix &matrix, dgFloat32 size)
 
void BeamClippingSimd (const dgCollisionConvex *const hull, const dgMatrix &matrix, dgFloat32 size)
 
dgInt32 QuickTest (const dgCollisionConvex *const hull, const dgMatrix &matrix)
 
dgInt32 QuickTestSimd (const dgCollisionConvex *const hull, const dgMatrix &matrix)
 
dgInt32 QuickTestContinue (const dgCollisionConvex *const hull, const dgMatrix &matrix)
 
dgInt32 QuickTestContinueSimd (const dgCollisionConvex *const hull, const dgMatrix &matrix)
 
dgInt32 ClipContacts (dgInt32 count, dgContactPoint *const contactOut, const dgMatrix &globalMatrix) const
 
dgVector ClosestDistanceToTriangle (const dgVector &point, const dgVector &p0, const dgVector &p1, const dgVector &p2, bool &isEdge) const
 
bool PointToPolygonDistance (const dgVector &point, dgFloat32 radius, dgVector &out, bool &isEdge)
 
bool DistanceToOrigen (const dgMatrix &matrix, const dgVector &scale, dgFloat32 radius, dgVector &out, bool &isEdge)
 
dgFloat32 MovingPointToPolygonContact (const dgVector &p, const dgVector &veloc, dgFloat32 radius, dgContactPoint &contact)
 
dgFloat32 MovingSphereToEdgeContact (const dgVector &center, const dgVector &veloc, dgFloat32 radius, const dgVector &v0, const dgVector &v1, dgVector &contactOutOnLine) const
 
void CalculateNormal ()
 
void CalculateNormalSimd ()
 
- Public Member Functions inherited from dgCollisionConvex
virtual void CalcAABB (const dgMatrix &matrix, dgVector &p0, dgVector &p1) const
 
virtual void CalcAABBSimd (const dgMatrix &matrix, dgVector &p0, dgVector &p1) const
 
virtual dgFloat32 RayCastSimd (const dgVector &localP0, const dgVector &localP1, dgContactPoint &contactOut, OnRayPrecastAction preFilter, const dgBody *const body, void *const userData) const
 
dgInt32 GetVertexCount () const
 
virtual bool IsTriggerVolume () const
 
- Public Member Functions inherited from dgCollision
const dgMatrixGetOffsetMatrix () const
 
void SetOffsetMatrix (const dgMatrix &matrix)
 
dgCollisionID GetCollisionPrimityType () const
 
dgUnsigned32 SetUserDataID () const
 
void SetUserDataID (dgUnsigned32 userData)
 
dgInt32 IsType (RTTI type) const
 
virtual void GetCollisionInfo (dgCollisionInfo *info) const
 
dgUnsigned32 GetSignature () const
 
virtual dgMatrix ModifierGetMatrix () const
 
virtual void ModifierSetMatrix (const dgMatrix &matrix)
 
virtual void SetBreakImpulse (dgFloat32 force)
 
virtual dgFloat32 GetBreakImpulse () const
 
dgCollisionAddRef ()
 
virtual dgInt32 Release ()
 
dgInt32 GetRefCount () const
 
dgMemoryAllocatorGetAllocator () const
 

Public Attributes

dgVector m_normal
 
dgVector m_localPoly [64]
 
dgVector m_localPolySimd [64 *3/4]
 
dgInt32 m_clippEdgeNormal [64]
 
dgInt32 m_count
 
dgInt32 m_paddedCount
 
dgInt32 m_normalIndex
 
dgInt32 m_stride
 
dgInt32 * m_index
 
dgInt32 * m_adjacentNormalIndex
 
dgFloat32 * m_vertex
 
dgInt32 m_isEdgeIntersection
 

Additional Inherited Members

- Public Types inherited from dgCollision
enum  RTTI {
  dgCollisionNull_RTTI = 1 << 0, dgCollisionBox_RTTI = 1 << 1, dgCollisionCone_RTTI = 1 << 2, dgCollisionSphere_RTTI = 1 << 3,
  dgCollisionEllipse_RTTI = 1 << 4, dgCollisionCapsule_RTTI = 1 << 5, dgCollisionCylinder_RTTI = 1 << 6, dgCollisionConvexHull_RTTI = 1 << 7,
  dgCollisionChamferCylinder_RTTI = 1 << 8, dgCollisionConvexModifier_RTTI = 1 << 9, dgCollisionConvexPolygon_RTTI = 1 << 10, dgConvexCollision_RTTI = 1 << 11,
  dgCollisionCompound_RTTI = 1 << 12, dgCollisionBVH_RTTI = 1 << 13, dgCollisionMesh_RTTI = 1 << 14, dgCollisionUserMesh_RTTI = 1 << 15,
  dgCollisionHeightField_RTTI = 1 << 16, dgCollisionScene_RTTI = 1 << 17, dgCollisionCompoundBreakable_RTTI = 1 << 18
}
 
- Static Public Member Functions inherited from dgCollision
static dgUnsigned32 Quantize (dgFloat32 value)
 
static dgUnsigned32 MakeCRC (void *buffer, int size)
 
- Protected Member Functions inherited from dgCollisionConvex
virtual void * GetUserData () const
 
virtual void SetUserData (void *const userData)
 
 dgCollisionConvex (dgMemoryAllocator *const allocator, dgUnsigned32 signature, const dgMatrix &matrix, dgCollisionID id)
 
 dgCollisionConvex (dgWorld *const world, dgDeserialize deserialization, void *const userData)
 
virtual void SetAsTriggerVolume (bool mode)
 
virtual void SerializeLow (dgSerialize callback, void *const userData) const
 
dgVector CalculateVolumeIntegral (const dgPlane &plane) const
 
dgFloat32 GetDiscretedAngleStep (dgFloat32 radius) const
 
dgConvexSimplexEdgeGetSupportEdge (const dgVector &dir) const
 
void SetVolumeAndCG ()
 
bool SanityCheck (dgPolyhedra &hull) const
 
virtual void DebugCollision (const dgMatrix &matrix, OnDebugCollisionMeshCallback callback, void *const userData) const
 
virtual dgFloat32 CalculateMassProperties (dgVector &inertia, dgVector &crossInertia, dgVector &centerOfMass) const
 
bool SanityCheck (dgInt32 count, const dgVector &normal, dgVector *const contactsOut) const
 
dgInt32 RectifyConvexSlice (dgInt32 count, const dgVector &normal, dgVector *const contactsOut) const
 
- Protected Member Functions inherited from dgCollision
 dgCollision (dgMemoryAllocator *const allocator, dgUnsigned32 signature, const dgMatrix &matrix, dgCollisionID id)
 
 dgCollision (dgWorld *const world, dgDeserialize deserialization, void *const userData)
 
void SetSignature (dgInt32 signature)
 
- Protected Attributes inherited from dgCollisionConvex
dgVector m_volume
 
dgVector m_boxSize
 
dgVector m_boxOrigin
 
dgVector m_size_x
 
dgVector m_size_y
 
dgVector m_size_z
 
dgConvexSimplexEdgem_supportVertexStarCuadrant [8]
 
void * m_userData
 
dgVectorm_vertex
 
dgConvexSimplexEdgem_simplex
 
dgFloat32 m_boxMinRadius
 
dgFloat32 m_boxMaxRadius
 
dgFloat32 m_simplexVolume
 
dgUnsigned16 m_edgeCount
 
dgUnsigned16 m_vertexCount
 
dgUnsigned32 m_isTriggerVolume: 1
 
- Protected Attributes inherited from dgCollision
dgMatrix m_offset
 
dgMemoryAllocatorm_allocator
 
dgInt32 m_rtti
 
dgInt32 m_refCount
 
dgUnsigned32 m_userDataID
 
dgUnsigned32 m_signature
 
dgCollisionID m_collsionId
 
- Static Protected Attributes inherited from dgCollisionConvex
static dgVector m_multiResDir [8]
 
static dgVector m_multiResDir_sse [6]
 
static dgTriplex m_hullDirs [14]
 
static dgInt32 m_iniliazised
 
static dgInt32 m_rayCastSimplex [4][4]
 

The documentation for this class was generated from the following file: