BPolyhedron.h
29 Vertex_None = 0x0000,
30 Vertex_Normal = 0x0001,
31 Vertex_Parameter = 0x0002,
32 Vertex_Face_Color = 0x0004,
33 Vertex_Edge_Color = 0x0008,
34 Vertex_Marker_Color = 0x0010,
35 Vertex_Face_Index = 0x0020,
36 Vertex_Edge_Index = 0x0040,
37 Vertex_Marker_Index = 0x0080,
41 Vertex_Marker_RGBA = 0x0800,
42 Vertex_Any_Color = 0x08FC
49 Face_None = 0x0000,
50 Face_Color = 0x0001,
51 Face_Index = 0x0002,
52 Face_Any_Color = 0x0003,
53 Face_Normal = 0x0004,
54 Face_Visibility = 0x0008,
55 Face_Pattern = 0x0010
62 Edge_None = 0x0000,
63 Edge_Color = 0x0001,
64 Edge_Index = 0x0002,
65 Edge_Any_Color = 0x0003,
66 Edge_Normal = 0x0004,
67 Edge_Visibility = 0x0008,
68 Edge_Pattern = 0x0010,
69 Edge_Weight = 0x0020,
70 Fake_Edge = 0x8000 //for edges (if any) that do not exist on the write side, but will be introduced due to triangulation
77 TKSH_STANDARD = 0x00,
78 TKSH_COMPRESSED_POINTS = 0x01,
79 TKSH_COMPRESSED_FACES = 0x02,
80 TKSH_TRISTRIPS = 0x04,
81 TKSH_HAS_OPTIONALS = 0x08,
82 TKSH_FIRSTPASS = 0x10,
83 TKSH_BOUNDING_ONLY = 0x20,
84 TKSH_CONNECTIVITY_COMPRESSION = 0x40,
85 TKSH_EXPANDED = 0x80
93 TKSH2_COLLECTION = 0x0001,
94 TKSH2_NULL = 0x0002,
95 TKSH2_HAS_NEGATIVE_FACES = 0x0004,
96 TKSH2_GLOBAL_QUANTIZATION = 0x0008
103 OPT_TERMINATE = 0,
104 OPT_ALL_NORMALS_COMPRESSED = 1,
105 OPT_NORMALS_COMPRESSED = 2,
106 OPT_ALL_PARAMETERS_COMPRESSED = 3,
107 OPT_PARAMETERS_COMPRESSED = 4,
108 OPT_ALL_VFCOLORS = 5,
109 OPT_VERTEX_FCOLORS = 6,
110 OPT_ALL_VECOLORS = 7,
111 OPT_VERTEX_ECOLORS = 8,
112 OPT_ALL_VMCOLORS = 9,
113 OPT_VERTEX_MCOLORS = 10,
114 OPT_ALL_VFINDICES = 11,
115 OPT_VERTEX_FINDICES = 12,
116 OPT_ALL_VEINDICES = 13,
117 OPT_VERTEX_EINDICES = 14,
118 OPT_ALL_VMINDICES = 15,
119 OPT_VERTEX_MINDICES = 16,
120 OPT_ALL_NORMALS = 17,
121 OPT_NORMALS = 18,
122 OPT_ALL_NORMALS_POLAR = 19,
123 OPT_NORMALS_POLAR = 20,
124 OPT_ALL_VMVISIBILITIES = 21,
125 OPT_VERTEX_MARKER_VISIBILITIES = 22,
126 OPT_ALL_VMSYMBOLS = 23,
127 OPT_VERTEX_MARKER_SYMBOLS = 24,
128 OPT_ALL_VMSIZES = 25,
129 OPT_VERTEX_MARKER_SIZES = 26,
130 OPT_PARAMETERS = 27,
131 OPT_ALL_PARAMETERS = 28,
132 OPT_ALL_VMRGBAS = 29,
133 OPT_VERTEX_MRGBAS = 30,
135 OPT_ALL_FACE_COLORS = 33,
136 OPT_FACE_COLORS = 34,
137 OPT_ALL_FACE_INDICES = 35,
138 OPT_FACE_INDICES = 36,
139 OPT_ALL_FACE_NORMALS_POLAR = 37,
140 OPT_FACE_NORMALS_POLAR = 38,
141 OPT_ALL_FACE_VISIBILITIES = 39,
142 OPT_FACE_VISIBILITIES = 40,
143 OPT_ALL_FACE_PATTERNS = 41,
144 OPT_FACE_PATTERNS = 42,
146 OPT_FACE_REGIONS = 51,
148 OPT_ALL_EDGE_COLORS = 71,
149 OPT_EDGE_COLORS = 72,
150 OPT_ALL_EDGE_INDICES = 73,
151 OPT_EDGE_INDICES = 74,
152 OPT_ALL_EDGE_NORMALS_POLAR = 75,
153 OPT_EDGE_NORMALS_POLAR = 76,
154 OPT_ALL_EDGE_VISIBILITIES = 77,
155 OPT_EDGE_VISIBILITIES = 78,
156 OPT_ALL_EDGE_PATTERNS = 79,
157 OPT_EDGE_PATTERNS = 80,
158 OPT_ALL_EDGE_WEIGHTS = 81,
159 OPT_EDGE_WEIGHTS = 82,
165 /* Note: "UNCOMPRESSED" versions added instead of "COMPRESSED" to preserve original compressed meaning of like opts. */
166 OPT_ALL_VFCOLORS_UNCOMPRESSED = 101,
167 OPT_VERTEX_FCOLORS_UNCOMPRESSED = 102,
168 OPT_ALL_VECOLORS_UNCOMPRESSED = 103,
169 OPT_VERTEX_ECOLORS_UNCOMPRESSED = 104,
170 OPT_ALL_VMCOLORS_UNCOMPRESSED = 105,
171 OPT_VERTEX_MCOLORS_UNCOMPRESSED = 106,
172 OPT_ALL_VMRGBAS_UNCOMPRESSED = 107,
173 OPT_VERTEX_MRGBAS_UNCOMPRESSED = 108,
174 OPT_ALL_VFINDICES_UNCOMPRESSED = 109,
175 OPT_VERTEX_FINDICES_UNCOMPRESSED = 110,
176 OPT_ALL_VEINDICES_UNCOMPRESSED = 111,
177 OPT_VERTEX_EINDICES_UNCOMPRESSED = 112,
178 OPT_ALL_VMINDICES_UNCOMPRESSED = 113,
179 OPT_VERTEX_MINDICES_UNCOMPRESSED = 114,
180 OPT_ALL_FACE_COLORS_UNCOMPRESSED = 115,
181 OPT_FACE_COLORS_UNCOMPRESSED = 116,
182 OPT_ALL_FACE_INDICES_UNCOMPRESSED = 117,
183 OPT_FACE_INDICES_UNCOMPRESSED = 118,
307 TK_Status SetKey (BStreamFileToolkit &tk, ID_Key key) { set_last_key (tk, key); mp_key = key; return TK_Normal; };
321 TK_Status SetBounding (float const bbox[]) { mp_bbox[0] = bbox[0]; mp_bbox[1] = bbox[1]; mp_bbox[2] = bbox[2]; mp_bbox[3] = bbox[3]; mp_bbox[4] = bbox[4]; mp_bbox[5] = bbox[5]; return TK_Normal; };
676 //data members prefixed with "mp_", not "m_", to avoid potential naming conflicts with TK_Shell and/or TK_Mesh
865 virtual TK_Status write_collection (BStreamFileToolkit & tk, bool write_tag = false, int variant = 0);
868 void normals_cartesian_to_polar (unsigned int * exists, int flag, int count, const float in[], float out[]);
870 void normals_polar_to_cartesian (unsigned int * exists, int flag, int count, const float in[], float out[]);
970 virtual TK_Status write_collection_ascii (BStreamFileToolkit & tk, bool write_tag = false, int variant = 0);
1007 virtual TK_Status mangle_point_attributes (BStreamFileToolkit & tk, int pointmap_count, int pointmap[]);
1008 virtual TK_Status mangle_face_attributes (BStreamFileToolkit & tk, int facemap_count, int facemap[]);
bool HasVertexMarkerIndices() const
Definition: BPolyhedron.h:600
bool HasVertexMarkerSymbols() const
Definition: BPolyhedron.h:610
float const * GetVertexEdgeIndices() const
Definition: BPolyhedron.h:263
TK_Status SetKey(BStreamFileToolkit &tk, ID_Key key)
informs the TK_Polyhedron of the id by which this piece of geometry is known
Definition: BPolyhedron.h:307
virtual void Reset()
The BStreamFileToolkit class provides support for importing/exporting HOOPS Stream File information...
Definition: BStreamFileToolkit.h:367
float const * GetVertexFaceColors() const
Definition: BPolyhedron.h:227
float const * GetVertexParameters() const
Definition: BPolyhedron.h:223
virtual TK_Status Read(BStreamFileToolkit &tk)=0
bool HasVertexMarkerVisibilities() const
Definition: BPolyhedron.h:608
Definition: BStream.h:276
Definition: BStream.h:275
void set_last_key(BStreamFileToolkit &tk, ID_Key key)
sets the given key as "most recent" on the toolkit for the purposes of associating keys with indices ...
Definition: BOpcodeHandler.h:647
The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical piec...
Definition: BOpcodeHandler.h:55
TK_Status
Codes which can be either passed to various toolkit functions, or indicate the result of a toolkit fu...
Definition: BStream.h:274
float const * GetVertexFaceIndices() const
Definition: BPolyhedron.h:259
float const * GetVertexEdgeColors() const
Definition: BPolyhedron.h:231
float const * GetVertexMarkerColors() const
Definition: BPolyhedron.h:235
float const * GetVertexMarkerIndices() const
Definition: BPolyhedron.h:267
float const * GetVertexMarkerRGBAs() const
Definition: BPolyhedron.h:239
virtual TK_Status Write(BStreamFileToolkit &tk)=0