Bullet Collision Detection & Physics Library
Classes | Public Member Functions | Public Attributes | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
btConvexHullInternal Class Reference
Collaboration diagram for btConvexHullInternal:
Collaboration graph
[legend]

Classes

class  DMul
 
class  Edge
 
class  Face
 
class  Int128
 
class  IntermediateHull
 
class  Point32
 
class  Point64
 
class  PointR128
 
class  Pool
 
class  PoolArray
 
class  Rational128
 
class  Rational64
 
class  Vertex
 

Public Member Functions

void compute (const void *coords, bool doubleCoords, int stride, int count)
 
btVector3 getCoordinates (const Vertex *v)
 
btScalar shrink (btScalar amount, btScalar clampAmount)
 

Public Attributes

VertexvertexList
 

Private Types

enum  Orientation {
  NONE ,
  CLOCKWISE ,
  COUNTER_CLOCKWISE
}
 

Private Member Functions

EdgefindMaxAngle (bool ccw, const Vertex *start, const Point32 &s, const Point64 &rxs, const Point64 &sxrxs, Rational64 &minCot)
 
void findEdgeForCoplanarFaces (Vertex *c0, Vertex *c1, Edge *&e0, Edge *&e1, Vertex *stop0, Vertex *stop1)
 
EdgenewEdgePair (Vertex *from, Vertex *to)
 
void removeEdgePair (Edge *edge)
 
void computeInternal (int start, int end, IntermediateHull &result)
 
bool mergeProjection (IntermediateHull &h0, IntermediateHull &h1, Vertex *&c0, Vertex *&c1)
 
void merge (IntermediateHull &h0, IntermediateHull &h1)
 
btVector3 toBtVector (const Point32 &v)
 
btVector3 getBtNormal (Face *face)
 
bool shiftFace (Face *face, btScalar amount, btAlignedObjectArray< Vertex * > stack)
 

Static Private Member Functions

static Orientation getOrientation (const Edge *prev, const Edge *next, const Point32 &s, const Point32 &t)
 

Private Attributes

btVector3 scaling
 
btVector3 center
 
Pool< VertexvertexPool
 
Pool< EdgeedgePool
 
Pool< FacefacePool
 
btAlignedObjectArray< Vertex * > originalVertices
 
int mergeStamp
 
int minAxis
 
int medAxis
 
int maxAxis
 
int usedEdgePairs
 
int maxUsedEdgePairs
 

Detailed Description

Definition at line 50 of file btConvexHullComputer.cpp.

Member Enumeration Documentation

◆ Orientation

Enumerator
NONE 
CLOCKWISE 
COUNTER_CLOCKWISE 

Definition at line 658 of file btConvexHullComputer.cpp.

Member Function Documentation

◆ compute()

void btConvexHullInternal::compute ( const void *  coords,
bool  doubleCoords,
int  stride,
int  count 
)

Definition at line 1956 of file btConvexHullComputer.cpp.

◆ computeInternal()

void btConvexHullInternal::computeInternal ( int  start,
int  end,
IntermediateHull result 
)
private

Definition at line 1205 of file btConvexHullComputer.cpp.

◆ findEdgeForCoplanarFaces()

void btConvexHullInternal::findEdgeForCoplanarFaces ( Vertex c0,
Vertex c1,
Edge *&  e0,
Edge *&  e1,
Vertex stop0,
Vertex stop1 
)
private

Definition at line 1477 of file btConvexHullComputer.cpp.

◆ findMaxAngle()

btConvexHullInternal::Edge * btConvexHullInternal::findMaxAngle ( bool  ccw,
const Vertex start,
const Point32 s,
const Point64 rxs,
const Point64 sxrxs,
Rational64 minCot 
)
private

Definition at line 1425 of file btConvexHullComputer.cpp.

◆ getBtNormal()

btVector3 btConvexHullInternal::getBtNormal ( Face face)
private

Definition at line 2086 of file btConvexHullComputer.cpp.

◆ getCoordinates()

btVector3 btConvexHullInternal::getCoordinates ( const Vertex v)

Definition at line 2091 of file btConvexHullComputer.cpp.

◆ getOrientation()

btConvexHullInternal::Orientation btConvexHullInternal::getOrientation ( const Edge prev,
const Edge next,
const Point32 s,
const Point32 t 
)
staticprivate

Definition at line 1399 of file btConvexHullComputer.cpp.

◆ merge()

void btConvexHullInternal::merge ( IntermediateHull h0,
IntermediateHull h1 
)
private

Definition at line 1660 of file btConvexHullComputer.cpp.

◆ mergeProjection()

bool btConvexHullInternal::mergeProjection ( IntermediateHull h0,
IntermediateHull h1,
Vertex *&  c0,
Vertex *&  c1 
)
private

Definition at line 1020 of file btConvexHullComputer.cpp.

◆ newEdgePair()

btConvexHullInternal::Edge * btConvexHullInternal::newEdgePair ( Vertex from,
Vertex to 
)
private

Definition at line 999 of file btConvexHullComputer.cpp.

◆ removeEdgePair()

void btConvexHullInternal::removeEdgePair ( Edge edge)
inlineprivate

Definition at line 781 of file btConvexHullComputer.cpp.

◆ shiftFace()

bool btConvexHullInternal::shiftFace ( Face face,
btScalar  amount,
btAlignedObjectArray< Vertex * >  stack 
)
private

Definition at line 2221 of file btConvexHullComputer.cpp.

◆ shrink()

btScalar btConvexHullInternal::shrink ( btScalar  amount,
btScalar  clampAmount 
)

Definition at line 2100 of file btConvexHullComputer.cpp.

◆ toBtVector()

btVector3 btConvexHullInternal::toBtVector ( const Point32 v)
private

Definition at line 2077 of file btConvexHullComputer.cpp.

Member Data Documentation

◆ center

btVector3 btConvexHullInternal::center
private

Definition at line 763 of file btConvexHullComputer.cpp.

◆ edgePool

Pool<Edge> btConvexHullInternal::edgePool
private

Definition at line 765 of file btConvexHullComputer.cpp.

◆ facePool

Pool<Face> btConvexHullInternal::facePool
private

Definition at line 766 of file btConvexHullComputer.cpp.

◆ maxAxis

int btConvexHullInternal::maxAxis
private

Definition at line 771 of file btConvexHullComputer.cpp.

◆ maxUsedEdgePairs

int btConvexHullInternal::maxUsedEdgePairs
private

Definition at line 773 of file btConvexHullComputer.cpp.

◆ medAxis

int btConvexHullInternal::medAxis
private

Definition at line 770 of file btConvexHullComputer.cpp.

◆ mergeStamp

int btConvexHullInternal::mergeStamp
private

Definition at line 768 of file btConvexHullComputer.cpp.

◆ minAxis

int btConvexHullInternal::minAxis
private

Definition at line 769 of file btConvexHullComputer.cpp.

◆ originalVertices

btAlignedObjectArray<Vertex*> btConvexHullInternal::originalVertices
private

Definition at line 767 of file btConvexHullComputer.cpp.

◆ scaling

btVector3 btConvexHullInternal::scaling
private

Definition at line 762 of file btConvexHullComputer.cpp.

◆ usedEdgePairs

int btConvexHullInternal::usedEdgePairs
private

Definition at line 772 of file btConvexHullComputer.cpp.

◆ vertexList

Vertex* btConvexHullInternal::vertexList

Definition at line 830 of file btConvexHullComputer.cpp.

◆ vertexPool

Pool<Vertex> btConvexHullInternal::vertexPool
private

Definition at line 764 of file btConvexHullComputer.cpp.


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