16 #ifndef _HUTILITYSPARSE_SHELL_H
17 #define _HUTILITYSPARSE_SHELL_H
26 #define VI_BITS (16) //number of bits per section of vertex indices
27 #define VI_MASK ((1<<VI_BITS)-1)
28 #define MAX_SI_INDEX ((0x1 << (31-VI_BITS))-1)
33 MVO_POINTER_SIZED_INT offset;
43 #define UNUSED_INDEX_TO_PAIR 0xffffffff
59 unsigned int *IndexToPair;
82 void ExpandSharedVertices();
83 void ExpandShellLookup(
int count);
84 void ExpandPairToIndices();
93 unsigned int *m_IndexToPairs;
94 int m_IndexToPairsAllocated;
95 int m_IndexToPairsUsed;
98 int m_SharedVerticesAllocated;
99 int m_SharedVerticesUsed;
102 int m_ShellLookupAllocated;
103 int m_ShellLookupUsed;
106 int m_PairToIndexAllocated;
107 int m_PairToIndexUsed;
109 void AddOneIndexToPair (
int bigIndex,
int littleIndex);
110 void RemoveOneTranslation (
HC_KEY key,
int littleIndex);
111 void RemoveTranslations (
HC_KEY key,
int face_list_length,
const int *face_list);
113 static void AddOneTranslation (
void *arg1,
void *arg2,
void *arg3);
127 HC_KEY KInsertShell (
int point_count,
const HPoint *points,
int face_list_length,
const int *face_list);
133 void DeleteByKey (
HC_KEY key);
135 void EditShellPoints (
HC_KEY key,
int littleIndexOffset,
int ndelete,
int insert,
const HPoint *points);
139 void EditShellFaces (HC_KEY key,
int ioffset,
int ndelete,
int insert_list_length,
const int *insert_list) {
144 int GetPairCount (
int bigIndex)
const;
151 bool GetPair (
int bigIndex,
int n, HC_KEY *key,
int *littleIndex)
const;
157 bool GetPairs (
int bigIndex, HC_KEY *keys,
int *littleIndices)
const;
159 bool GetIndex (HC_KEY key,
int littleIndex,
int *bigIndex)
const;
Definition: HIndexManager.h:58
void HC_Edit_Shell_Faces(HC_KEY key, int offset, int ndelete, int ilist_length, const int *insert_list)
Definition: HUtilitySparseShell.h:79
The HPoint class is the data type of a three-dimensional point.
Definition: HGlobals.h:126
Definition: HIndexManager.h:38
Definition: HIndexManager.h:32
void EditShellFaces(HC_KEY key, int ioffset, int ndelete, int insert_list_length, const int *insert_list)
Definition: HUtilitySparseShell.h:139