PolyLineZ
A PolyLineZ consists of one or more parts. A part is a connected sequence of two or more points. Parts may or may not be connected to one another. Parts may or may not intersect one another.
- Box
- The bounding box for the PolyLineZ, stored in the order Xmin, Ymin, Xmax, Ymax
- NumParts
- The number of parts in the PolyLineZ
- NumPoints
- The total number of points for all parts
- Parts
- An array of length NumParts
Stores, for each part, the index of its first point in the points array.
Array indexes are numbered with respect to 0.
- Points
- An array of length NumPoints
The points for each part in the PolyLineZ are stored end to end. The points for part 2 follow the points for part 1, and so on. The parts array holds the array index of the starting point for each part. There is no delimiter in the points array between parts.
- Z Range
- The minimum and maximum Z values for the PolyLineZ stored in the order Zmin, Zmax
- Z Array
- An array of length NumPoints
The Z values for each part in the PolyLineZ are stored end to end. The Z values for part 2 follow the Z values for part 1, and so on. The parts array holds the array index of the starting point for each part. There is no delimiter in the Z Array between parts.
Position | Field | Value | Type | Number | Byte order |
---|---|---|---|---|---|
Byte 0 | Shape Type | 10 | Integer | 1 | Little endian |
Byte 4 | Box | Box | Double | 4 | Little endian |
Byte 36 | NumParts | NumParts | Integer | 1 | Little endian |
Byte 40 | NumPoints | NumPoints | Integer | 1 | Little endian |
Byte 44 | Parts | Parts | Integer | NumParts | Little endian |
Byte X | Points | Points | Point | NumPoints | Little endian |
Byte Y | Zmin | Zmin | Double | 1 | Little endian |
Byte Y+8 | Zmax | Zmax | Double | 1 | Little endian |
Byte Y+16 | Z Array | Z Array | Double | NumPoints | Little endian |