16#ifndef BT_CONVEX_POINT_CLOUD_SHAPE_H
17#define BT_CONVEX_POINT_CLOUD_SHAPE_H
35 m_localScaling.setValue(1.f, 1.f, 1.f);
43 m_localScaling = localScaling;
45 m_unscaledPoints = points;
46 m_numPoints = numPoints;
54 m_unscaledPoints = points;
55 m_numPoints = numPoints;
56 m_localScaling = localScaling;
64 return m_unscaledPoints;
69 return m_unscaledPoints;
79 return m_unscaledPoints[index] * m_localScaling;
85 virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(
const btVector3* vectors,
btVector3* supportVerticesOut,
int numVectors)
const;
89 virtual const char*
getName()
const {
return "ConvexPointCloud"; }
91 virtual int getNumVertices()
const;
92 virtual int getNumEdges()
const;
94 virtual void getVertex(
int i,
btVector3& vtx)
const;
95 virtual int getNumPlanes()
const;
100 virtual void setLocalScaling(
const btVector3& scaling);
@ CONVEX_POINT_CLOUD_SHAPE_PROXYTYPE
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
The btConvexPointCloudShape implements an implicit convex hull of an array of vertices.
virtual const char * getName() const
btVector3 getScaledPoint(int index) const
btConvexPointCloudShape(btVector3 *points, int numPoints, const btVector3 &localScaling, bool computeAabb=true)
BT_DECLARE_ALIGNED_ALLOCATOR()
btVector3 * getUnscaledPoints()
void setPoints(btVector3 *points, int numPoints, bool computeAabb=true, const btVector3 &localScaling=btVector3(1.f, 1.f, 1.f))
btConvexPointCloudShape()
btVector3 * m_unscaledPoints
const btVector3 * getUnscaledPoints() const
The btPolyhedralConvexAabbCachingShape adds aabb caching to the btPolyhedralConvexShape.
btVector3 can be used to represent 3D points and vectors.