The SEDRIS Data Representation Model
APPENDIX A - Classes Primitive Geometry |
---|
An instance of a concrete class derived from this DRM class specifies data to describe a <Geometry Representation> instance.
In order to consume, set up a component iterator for <Primitive Geometry> on the first <Union Of Primitive Geometry> with search depth of 0 and traversal method to SE_TRAV_ORDR_DEPTH_FIRST. This will return the <Polygon> instances in their rendering order.
As a constraint, <Union Of Primitive Geometry> components of <Continuous LOD Geometry> instances are not allowed to have other <Union Of Primitive Geometry> instances within the scope of any of their <Primitive Geometry> components, a mechanism provided to allow a data provider to specify subfacing information. A terrain <Polygon> usually does not have subfaces. If there is a terrain <Polygon> within another coplanar <Polygon>, then a <Rendering Priority Level> instance can be provided to determine the correct drawing order. This is usually a layering issue, wherein soil is usually rendered first, then vegetation, then water, and so on.
<Rendering Priority Level> should be handled normally. If one is encountered, then the siblings for that <Polygon> should be examined and those siblings with a lower rendering priority should be processed before those with a higher rendering priority.
The ordering_reason could still be valid for any of the enumerants currently in SE_Ordering_Reason. The actual drawing order is explicitly defined using a depth-first search for the <Primitive Geometry>.
A <Primitive Geometry> instance contains a <Union Of Primitive Geometry> instance as a component only when that <Primitive Geometry> instance can be decomposed into nested <Primitive Geometry> instances, as (for example) a <Polygon> instance can be decomposed into subfaces.
|