16#ifndef BT_CONVEX_HULL_SHAPE_H
17#define BT_CONVEX_HULL_SHAPE_H
42 return &m_unscaledPoints[0];
47 return &m_unscaledPoints[0];
65 return m_unscaledPoints.
size();
75 virtual const char*
getName()
const {
return "Convex"; }
virtual void setLocalScaling(const btVector3 &scaling)
SIMD_FORCE_INLINE btVector3 localGetSupportingVertexWithoutMargin(const btVector3 &vec) const
btConvexShape Interface
virtual void getEdge(int i, btVector3 &pa, btVector3 &pb) const
virtual bool isInside(const btVector3 &pt, btScalar tolerance) const
virtual btVector3 localGetSupportingVertex(const btVector3 &vec) const
virtual const char * getName() const
virtual int getNumVertices() const
virtual void getVertex(int i, btVector3 &vtx) const
virtual int getNumPlanes() const
virtual void getPlane(btVector3 &planeNormal, btVector3 &planeSupport, int i) const
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const
virtual int getNumEdges() const
virtual void recalculateLocalAabb()
btConvexHullShape(const btScalar *points=0, int numPoints=0, int stride=sizeof(btVector3))
SIMD_FORCE_INLINE btVector3 getScaledPoint(int i) const
SIMD_FORCE_INLINE int getNumPoints() const
void optimizeConvexHull()
const btVector3 * getPoints() const
getPoints is obsolete, please use getUnscaledPoints
btVector3 * getUnscaledPoints()
void addPoint(const btVector3 &point, bool recalculateLocalAabb=true)
unsigned calculateSerializeBufferSize() const
virtual bool serialize(void *o_alignedDataBuffer, unsigned i_dataBufferSize, bool i_swapEndian) const
Data buffer MUST be 16 byte aligned.
#define BT_DECLARE_ALIGNED_ALLOCATOR()
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
#define ATTRIBUTE_ALIGNED16(a)
#define SIMD_FORCE_INLINE
btVector3
btVector3 can be used to represent 3D points and vectors. It has an un-used w component to suit 16-by...
SIMD_FORCE_INLINE int size() const
return the number of elements in the array
The btPolyhedralConvexAabbCachingShape adds aabb caching to the btPolyhedralConvexShape.
vector project(vector v, vector v_proj)
do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
btVector3DoubleData * m_unscaledPointsDoublePtr
btVector3FloatData * m_unscaledPointsFloatPtr
btConvexInternalShapeData m_convexInternalShapeData
do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64