22 #ifndef __DG_CONVEXHULL_4D__ 23 #define __DG_CONVEXHULL_4D__ 31 #include "dgQuaternion.h" 34 class dgAABBPointTree4d;
57 dgInt32 m_otherVertex;
75 dgInt32 GetMark()
const {
78 void SetMark(dgInt32 mark) {
88 void Init(
const dgHullVector *
const points, dgInt32 v0, dgInt32 v1, dgInt32 v2, dgInt32 v3);
101 dgInt32 GetVertexCount()
const;
102 dgInt32 GetVertexIndex(dgInt32 i)
const;
114 virtual dgInt32 AddVertex(
const dgBigVector &vertex);
115 virtual dgInt32 InitVertexArray(
dgHullVector *
const points,
const dgBigVector *
const vertexCloud, dgInt32 count,
void *memoryPool, dgInt32 maxMemSize);
116 virtual dgListNode *AddFace(dgInt32 i0, dgInt32 i1, dgInt32 i2, dgInt32 i3);
117 virtual void DeleteFace(dgListNode *
const node) ;
119 dgListNode *FindFacingNode(
const dgBigVector &vertex);
121 dgInt32 BuildNormalList(
dgBigVector *
const normalArray)
const;
123 dgInt32 SupportVertex(dgAABBPointTree4d **
const tree,
const dgHullVector *
const points,
const dgBigVector &dir)
const;
126 void CalculateConvexHull(dgAABBPointTree4d *vertexTree,
dgHullVector *
const points, dgInt32 count, dgFloat64 distTol);
127 void LinkSibling(dgListNode *node0, dgListNode *node1)
const;
131 dgAABBPointTree4d *BuildTree(dgAABBPointTree4d *
const parent,
dgHullVector *
const points, dgInt32 count, dgInt32 baseIndex, dgInt8 **
const memoryPool, dgInt32 &maxMemSize)
const;
140 inline dgInt32 dgConvexHull4d::IncMark() {
145 inline dgInt32 dgConvexHull4d::GetVertexCount()
const {
149 inline dgInt32 dgConvexHull4d::GetVertexIndex(dgInt32 index)
const {
150 NEWTON_ASSERT(index >= 0);
151 NEWTON_ASSERT(index < m_count);
152 return m_points[index].m_index;
156 inline const dgBigVector &dgConvexHull4d::GetVertex(dgInt32 index)
const {
157 NEWTON_ASSERT(index >= 0);
158 NEWTON_ASSERT(index < m_count);
160 return m_points[index];
163 inline const dgHullVector *dgConvexHull4d::GetHullVertexArray()
const {
Definition: dgConvexHull4d.h:62
Definition: dgVector.h:86
Definition: dgConvexHull4d.h:52
Definition: dgConvexHull4d.h:96
Definition: dgDelaunayTetrahedralization.h:28
Definition: dgMemory.h:80
Definition: dgConvexHull4d.h:36
Definition: dgConvexHull4d.h:54
Definition: dgVector.h:104