The IGES Geometric Types
This section discusses a few of the geometric entities in IGES and their parameter specification. Figure C.5 lists some of the available entities. We describe those that appear in our sample file in Figure C.1.
Entity Number 124. This transformation matrix entity defines a 3 x 4 matrix of the form
Entity type # |
Entity type |
Entity type # |
Entity type |
100 |
Circular arc |
132 |
Connect Point |
102 |
Composite curve |
134 |
Node |
104 |
Conic arc |
136 |
Finite element |
106 |
Copious data |
138 |
Nodal displacement and rotation |
Centerline |
140 |
Offset surface |
|
Linear path |
142 |
Curve on a parametric surface |
|
Section line |
144 |
Trimmed parametric surface |
|
Simple closed area |
|||
Witness line |
CSG Types: |
||
108 |
Plane |
||
110 |
Line |
150 |
Block |
112 |
Parametric spline curve |
152 |
Right angular wedge |
114 |
Parametric spline surface |
154 |
Right circular cylinder |
116 |
Point |
156 |
Right circular cone frustrum |
118 |
Ruled surface |
158 |
Sphere |
120 |
Surface of revolution |
160 |
Torus |
122 |
Tabulated cylinder |
162 |
Solid of revolution |
124 |
Transformation matrix |
164 |
Solid of linear extrusion |
125 |
Flash |
168 |
Ellipsoid |
126 |
Rational B-spline curve |
180 |
Boolean tree |
128 |
Rational B-spline surface |
184 |
Solid assembly |
130 |
Offset curve |
Figure C.5. Table of some geometric IGES entities.
with the entries stored in row major form in the parameter data section. The matrix (rij) is assumed to be an orthogonal matrix. The entity corresponds to a transformation defined in terms of column vectors by
Our entity had form number 0. Its data started at line number 1 of the parameter data section, used three lines, and defined the identity transformation. Using other form numbers allows one to pass additional information.
Note. As we list the data for the geometric entities below, keep in mind that normally it would have to be transformed by the transformation matrix associated to the entity to get the “real” data. In our case, we are dealing with the identity transformation so that this is not necessary and we shall not keep pointing that out.
Entity Number 110. A line entity defines a segment between two points (x1,y1,z1) and (x2,y2,z2) whose coordinates are stored in a sequential manner in the parameter data section. In our case the data was stored in parameter data line number 19 and defined the segment [(0,0,0),(0,3,0)].
Entity Number 100. The data for this circular arc entity consists of two lines starting with parameter data line number 39. Figure C.6 describes the meaning of the data. The first number on line 39 is the entity number. The rest of the fields have the following values:
In other words, our arc lies in the planeparallel to the xy-plane. It has center (2,1,-4), starts at (2.5,1,-4), and ends at (2,1.5,-4). The fact that a semicolon follows the x3 and y3 values means that there are no extra pointers, that is, n = m = 0.
Note. The fields 8 through 9 + n + m in Figure C.6 are potentially present in most entities, although we shall no longer bother to mention them if they have not been given any values.
Entity Number 112. The parametric spline curve entity corresponds to a spline curve
some of whose parameter data fields are described in Figure C.7.
Figure C.6. Parameter data for circular arc entity #100.
In particular,
for
and
The coefficients D or the coefficients D and C will be zero if the polynomials are of degree 2 or 1, respectively. If the curve is planar, then the Z coefficients will be zero, except that AZ(i) will specify the plane z = AZ(i) that contains the curve. So that one can get the value and the first, second, and third derivative at the end point of the curve without computing the polynomial at u = T(N + 1), these values, divided by appropriate factorials, are included in the parameter data at the end of the coefficient data. The entity in our example has its data in parameter data lines 41 through 53. We see that
Parameter |
Name |
Type |
Description |
1 |
CTYPE |
Integer |
Spline type |
2 |
H |
Integer |
1 = linear 4 = Wilson-Fowler 2 = quadratic 5 = modified Wilson-Fowler 3 = cubic 6 = B-spline Continuity with respect to arc length at breakpoints |
3 |
NDIM |
Integer |
1 = curve is continuous and has slope continuity 2 = curve is continuous and has both slope and curvature continuity 2 = planar |
4 |
N |
Integer |
3 = non-planar Number of segments |
5 |
T(1) |
Real |
Break points of piecewise polynomial |
5+N |
T(N+1) |
Real |
|
6+N |
AX(1) |
Real |
x-Coordinate polynomial |
7+N 8+N 9+N 10+N |
BX(1) CX(1) DX(1) AY(1) |
y-Coordinate polynomial |
|
13+N 14+N |
DY(1) AZ(1) |
z-Coordinate polynomial |
|
18+N 6+13N |
AX(2) TPX0 |
Terminate point x-value |
|
TPX1 |
Terminate point x-value of 1st derivative |
||
TPX2 TPX3 TPY0 |
Terminate point x-value of 2nd derivative/2! Terminate point x-value of 3rd derivative/3! Terminate point y-value |
Figure C.7. Parameter data for parametric spline curve entity #112.
In other words the entity defines a cubic planar spline that is continuous and has slope continuity at the six breakpoints T(i) = i, i = 0, 1, . . ., 5.
Entity Number 106. The copious data entity has multiple meanings depending on its form number. Figure C.8 describes some of the fields of its parameter data. When the form number is 1, 2, or 3, then the IP field takes on the same value and they both have the same meaning. Its data starts in parameter data line number 70 and consists of 3 lines altogether. In our caseand we have five data points
How the points are interpreted is usually determined by the entity that refers to this one as we shall see when we discuss the next entity.
Entity Number 108. This is the plane entity. There is one parameter data line for it and that line has number 73. Figure C.9 describes some, but not all, parameters that can be associated to it. In our case we have
Figure C.8.Partial parameter data for copious entity #108.
Parameter |
Name |
Type |
Description |
1 |
A |
Real |
Corresponds to plane |
2 |
B |
Real |
|
3 |
C |
Real |
|
4 |
D |
Real |
|
5 |
DE |
Pointer |
Pointer to directory entry of closed curve entity or 0 |
Figure C.9. Partial parameter data for plane entity #108.
Because DE is nonzero, we have a closed curve in our plane that happens to be the copious data entity described above consisting of five points in the plane x = 0.
The IGES Nongeometric Types
Figure C.10 lists the nongeometric entity types for IGES version 3.0.
Entity Number 406. Property entities can contain numerical or textual data. The form number specifies the type of property at hand. Low numbers are predefined and numbers 5001-9999 are left for a user to define. In our case, the form number 5555 is a user-defined property. The first number in the parameter data section after the entity number is the number of properties. In our case, it is 1 and the property is the string “01”.
Entity Number 410. A view entity specifies how an object should be viewed. The projection is assumed to be a parallel orthographic projection. In the view coordinate system the view plane is assumed to be the plane z = 0 with the origin being the origin of the view plane. The view direction is along the positive z-direction. The positive y-axis is the “up” direction. One can also specify a view volume and scale factor. Figure C.11 shows the layout of the view volume. In the case of our entity, the fact that the status is physically dependent and the entity use flag is “other” means that a drawing entity number 404 points to it. See Figure C.12 for a description of the fields in the parameter data. In our case,
Annotation Entities |
Structure Entities |
||
Entity type # |
Entity type |
Entity type # |
Entity type |
202 |
Angular dimension entity |
302 |
Associativity definition entity |
106 |
Centerline entity |
402 |
Associativity instance entity |
206 |
Diameter dimension entity |
404 |
Drawing entity |
208 |
Flag note entity |
304 |
Line font definition entity |
210 |
General label entity |
306 |
MACRO definition entity |
212 |
General note entity |
600-699 |
MACRO instance entity |
214 |
Leader (arrow) entity |
406 |
Property entity |
216 |
Linear dimension entity |
308 |
Subfigure definition entity |
218 |
Ordinate dimension entity |
408 |
Singular subfigure instance entity |
220 |
Point dimension entity |
412 |
Rectangular array subfigure |
222 |
Radius dimension entity |
instance entity |
|
106 |
Section entity |
414 |
Circular array subfigure instance |
106 |
Witness line entity |
entity |
|
310 |
Text font definition entity |
||
410 |
View entity |
Figure C.10. Some IGES annotation and structure entities.
Figure C.11. The view volume for entity number 410.
Parameter |
Name Type |
Description |
1 |
VNO Integer |
View number |
2 |
SCALE Real |
Scale factor (default = 1.0) |
3 |
XVMINP Pointer |
Pointer to left side of view volume (XVMIN plane) or 0 |
4 |
YVMAXP Pointer |
Pointer to top of view volume (YVMAX plane) or 0 |
5 |
XVMAXP Pointer |
Pointer to right side of view volume (XVMAX plane) or 0 |
6 |
YVMINP Pointer |
Pointer to bottom of view volume (YVMIN plane) or 0 |
7 |
ZVMINP Pointer |
Pointer to back of view volume (ZVMIN plane) or 0 |
8 |
ZVMAXP Pointer |
Pointer to front of view volume (ZVMAX plane) or 0 |
Figure C.12. Partial parameter data for plane entity #410.
Parameter |
Name |
Type |
Description |
1 |
N |
Integer |
Number of entries |
2 |
DE |
Pointer |
Pointer to entity 1 |
N+1 |
DE |
Pointer |
Pointer to entity N |
Figure C.13. Parameter data for associativity instance entity #402 with form number 1.
A view volume has been specified. In general, a zero would indicate no clipping in a particular direction. We analyzed the XVMIN clipping plane corresponding to entity 53 in the last section. Our view entity has no pointers to associativity instances, general notes, or text template entities and one pointer to a property (on directory section line number 75).
In closing, we mention one other handy entity, the associativity instance entity with number 402. There are a number of variants of it depending on the form number. The so-called group associativities are particularly useful because they allow a collection of a set of entities to be maintained as a single, logical entity. A common one of these is the case where the form number is 1. This requires an (unordered) group of back pointers as the parameter data. The general structure for its data is shown in Figure C.13.