22 #ifndef __ND_SHAPE_NULL_H__
23 #define __ND_SHAPE_NULL_H__
25 #include "ndCollisionStdafx.h"
36 virtual ndFloat32 GetVolume()
const;
38 virtual ndFloat32 GetBoxMinRadius()
const;
39 virtual ndFloat32 GetBoxMaxRadius()
const;
41 virtual ndVector SupportVertex(
const ndVector& dir, ndInt32*
const vertexIndex)
const;
44 virtual ndVector SupportVertexSpecial(
const ndVector& dir, ndFloat32 skinMargin, ndInt32*
const vertexIndex)
const;
45 virtual ndInt32 CalculatePlaneIntersection(
const ndVector& normal,
const ndVector& point,
ndVector*
const contactsOut)
const;
50 inline ndShapeNull::ndShapeNull()
53 m_inertia = ndVector::m_one | ndVector::m_triplexMask;
56 inline ndShapeNull::~ndShapeNull()
65 inline ndVector ndShapeNull::SupportVertex(
const ndVector&, ndInt32*
const)
const
67 return ndVector::m_zero;
70 inline ndVector ndShapeNull::SupportVertexSpecial(
const ndVector&, ndFloat32, ndInt32*
const)
const
72 return ndVector::m_zero;
77 return ndFloat32(1.2f);
86 p0 = ndVector::m_zero;
87 p1 = ndVector::m_zero;
90 inline ndShapeInfo ndShapeNull::GetShapeInfo()
const
97 inline ndFloat32 ndShapeNull::GetVolume()
const
99 return ndFloat32(0.0f);
102 inline ndFloat32 ndShapeNull::GetBoxMinRadius()
const
104 return ndFloat32(0.0f);
107 inline ndFloat32 ndShapeNull::GetBoxMaxRadius()
const
109 return ndFloat32(0.0f);
114 return ndVector::m_zero;