consistency
This commit is contained in:
		| @@ -34,49 +34,40 @@ struct qhList | ||||
| struct qhHalfEdge; | ||||
| struct qhVertex; | ||||
|  | ||||
| enum qhFaceMark | ||||
| { | ||||
| 	e_visible, | ||||
| 	e_invisible | ||||
| }; | ||||
|  | ||||
| struct qhFace | ||||
| { | ||||
| 	enum State | ||||
| 	{ | ||||
| 		e_invisible, | ||||
| 		e_visible, | ||||
| 		e_unknown, | ||||
| 		e_deleted | ||||
| 	}; | ||||
|  | ||||
| 	qhFace* freeNext; | ||||
|  | ||||
| 	qhFace* prev; | ||||
| 	qhFace* next; | ||||
|  | ||||
| 	qhHalfEdge* edge; | ||||
|  | ||||
| 	qhList<qhVertex> conflictList; | ||||
| 	 | ||||
| 	State state; | ||||
|  | ||||
| 	b3Vec3 center; | ||||
| 	b3Plane plane; | ||||
|  | ||||
| 	qhFaceMark mark; | ||||
| 	 | ||||
| 	u32 GetVertexCount() const; | ||||
| 	u32 GetEdgeCount() const; | ||||
| 	 | ||||
| 	qhHalfEdge* FindHalfEdge(const qhVertex* v1, const qhVertex* v2) const; | ||||
| 	 | ||||
| 	void ComputeCenterAndPlane(); | ||||
|  | ||||
| 	// | ||||
| 	qhFace* freeNext; | ||||
| 	bool active; | ||||
| }; | ||||
|  | ||||
| struct qhHalfEdge | ||||
| { | ||||
| 	enum State | ||||
| 	{ | ||||
| 		e_used, | ||||
| 		e_deleted | ||||
| 	}; | ||||
| 	 | ||||
| 	State state; | ||||
|  | ||||
| 	qhHalfEdge* freeNext; | ||||
|  | ||||
| 	qhVertex* tail; | ||||
|  | ||||
| 	qhHalfEdge* prev; | ||||
| @@ -84,18 +75,24 @@ struct qhHalfEdge | ||||
| 	qhHalfEdge* twin; | ||||
|  | ||||
| 	qhFace* face; | ||||
|  | ||||
| 	// | ||||
| 	qhHalfEdge* freeNext; | ||||
| 	bool active; | ||||
| }; | ||||
|  | ||||
| struct qhVertex | ||||
| { | ||||
| 	qhVertex* freeNext; | ||||
|  | ||||
| 	qhVertex* prev; | ||||
| 	qhVertex* next; | ||||
|  | ||||
| 	b3Vec3 position; | ||||
|  | ||||
| 	qhFace* conflictFace; | ||||
|  | ||||
| 	// | ||||
| 	qhVertex* freeNext; | ||||
| 	bool active; | ||||
| }; | ||||
|  | ||||
| // A convex hull builder.  | ||||
| @@ -128,6 +125,7 @@ public: | ||||
| private: | ||||
| 	bool BuildInitialHull(const b3Vec3* vertices, u32 count); | ||||
| 	qhFace* AddFace(qhVertex* v1, qhVertex* v2, qhVertex* v3); | ||||
| 	qhFace* RemoveFace(qhFace* face); | ||||
|  | ||||
| 	qhVertex* FindEyeVertex() const; | ||||
| 	void AddVertex(qhVertex* v); | ||||
|   | ||||
| @@ -162,12 +162,16 @@ inline const qhList<qhFace>& qhHull::GetFaceList() const | ||||
| inline qhVertex* qhHull::AllocateVertex() | ||||
| { | ||||
| 	qhVertex* v = m_freeVertices; | ||||
| 	B3_ASSERT(v->active == false); | ||||
| 	v->active = true; | ||||
| 	m_freeVertices = v->freeNext; | ||||
| 	return v; | ||||
| } | ||||
|  | ||||
| inline void qhHull::FreeVertex(qhVertex* v) | ||||
| { | ||||
| 	//B3_ASSERT(v->active == true); | ||||
| 	v->active = false; | ||||
| 	v->freeNext = m_freeVertices; | ||||
| 	m_freeVertices = v; | ||||
| } | ||||
| @@ -175,14 +179,16 @@ inline void qhHull::FreeVertex(qhVertex* v) | ||||
| inline qhHalfEdge* qhHull::AllocateEdge() | ||||
| { | ||||
| 	qhHalfEdge* e = m_freeEdges; | ||||
| 	e->state = qhHalfEdge::e_used; | ||||
| 	B3_ASSERT(e->active == false); | ||||
| 	e->active = true; | ||||
| 	m_freeEdges = e->freeNext; | ||||
| 	return e; | ||||
| } | ||||
|  | ||||
| inline void qhHull::FreeEdge(qhHalfEdge* e) | ||||
| { | ||||
| 	e->state = qhHalfEdge::e_deleted; | ||||
| 	//B3_ASSERT(e->active == true); | ||||
| 	e->active = false; | ||||
| 	e->freeNext = m_freeEdges; | ||||
| 	m_freeEdges = e; | ||||
| } | ||||
| @@ -190,13 +196,16 @@ inline void qhHull::FreeEdge(qhHalfEdge* e) | ||||
| inline qhFace* qhHull::AllocateFace() | ||||
| { | ||||
| 	qhFace* f = m_freeFaces; | ||||
| 	B3_ASSERT(f->active == false); | ||||
| 	f->active = true; | ||||
| 	m_freeFaces = f->freeNext; | ||||
| 	return f; | ||||
| } | ||||
|  | ||||
| inline void qhHull::FreeFace(qhFace* f) | ||||
| { | ||||
| 	f->state = qhFace::e_deleted; | ||||
| 	//B3_ASSERT(f->active == true); | ||||
| 	f->active = false; | ||||
| 	f->freeNext = m_freeFaces; | ||||
| 	m_freeFaces = f; | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user