File: tristruct.i

package info (click to toggle)
yorick-gl 1.1%2Bcvs20070922%2Bdfsg-6.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, buster, jessie, jessie-kfreebsd, sid, stretch
  • size: 1,116 kB
  • ctags: 1,188
  • sloc: ansic: 14,722; sh: 218; makefile: 201
file content (155 lines) | stat: -rw-r--r-- 2,513 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
/*
 * $Id: tristruct.i,v 1.1.1.1 2005/09/18 22:08:03 dhmunro Exp $
 */
/* Copyright (c) 2005, The Regents of the University of California.
 * All rights reserved.
 * This file is part of yorick (http://yorick.sourceforge.net).
 * Read the accompanying LICENSE file for details.
 */
/* NOTE: these should not be exposed to interpreted interface */

/* data structures for triangle arrays and triangle strips */

func ASSERT(cond, msg)
{
  if(!cond) error(msg);
}

struct OctSpan {
  double xmin, xmax, ymin, ymax, zmin, zmax;
}

struct OctSTree {
  long maxdepth;
  pointer start;
  pointer chunk;
  pointer size;
  pointer trsiz;
  pointer offsets;
  pointer ranges;
  pointer next;
}

struct OctRange {
  double lo, hi;
}

struct OctTree {
  long maxdepth;
  pointer start;
  pointer chunk;
  pointer size;
  pointer trsiz;
  pointer offsets;
  pointer ranges;
  OctTree *next;
}

struct TriArray{
  long numTri;
  pointer cellIDs;
  pointer xyzverts;
  pointer normals;
  long nxti;
  long nxtj;
  long nxtk;
  TriArray *next;
}

struct TriArrayGrp {
  long numTri;
  pointer cellIDs;
  pointer xyzverts;
  pointer normals;
  pointer var2;
  pointer colors;
  pointer triEdg;
  pointer triStart;
  pointer nTris;
  TriArrayGrp *next;
}

struct PolyArrayGrp {
  long numPoly;
  pointer edges;
  pointer cellIDs;
  pointer xyzverts;
  pointer normals;
  pointer var2;
  pointer colors;
  pointer triEdg;
  pointer triStart;
  pointer nVerts;
  PolyArrayGrp *next;
}

struct TriStrip {
  long nVert;
  long nStrip;
  pointer cellIDs;
  pointer xyzverts;
  pointer normals;
  pointer triLen;
  long nxti;
  long nxtj;
  long nxtk;
  TriStrip *next;
}

struct TriStripGrp {
  long nVert;
  long nStrip;
  pointer cellIDs;
  pointer xyzverts;
  pointer normals;
  pointer colors;
  pointer triLen;
  TriStripGrp *next;
}

struct TriStripNdx {
  long nVert;
  long nStrip;
  pointer cellIDs;
  pointer ptndx;
  pointer triLen;
}

struct TriStripNdxGrp {
  long nVert;
  long nStrip;
  long numEdg;
  long numTri;
  pointer cellIDs;
  pointer ptndx;
  pointer xyzverts;
  pointer normals;
  pointer colors;
  pointer triLen;
  TriStripNdxGrp *next;
}

struct TriVertexGrp {
  long numTri;
  long numEdg;
  pointer cellIDs;
  pointer xyzverts;
  pointer normals;
  pointer colors;
  pointer var2;
  pointer ptndx;
  pointer triEdg;
  pointer triStart;
  pointer nTris;
  TriVertexGrp *next;
}

struct IsoTriStrip {
  long nvert;
  long edges(12);
}

struct IsoTriStripArray {
  long nStrip;
  IsoTriStrip the_tris(6);
}