<complexType name="TinType">
<annotation>
<documentation>A tin is a triangulated surface that uses
the Delauny algorithm or a similar algorithm complemented with
consideration of breaklines, stoplines, and maximum length of
triangle sides. These networks satisfy the Delauny's criterion
away from the modifications: Fore each triangle in the
network, the circle passing through its vertices does not
contain, in its interior, the vertex of any other triangle.</documentation>
</annotation>
<complexContent>
<extension base="gml:TriangulatedSurfaceType">
<sequence>
<element name="stopLines" type="gml:LineStringSegmentArrayPropertyType" minOccurs="0" maxOccurs="unbounded">
<annotation>
<documentation>Stoplines are lines where the local
continuity or regularity of the surface is questionable.
In the area of these pathologies, triangles intersecting
a stopline shall be removed from the tin surface, leaving
holes in the surface. If coincidence occurs on surface
boundary triangles, the result shall be a change of the
surface boundary. Stoplines contains all these
pathological segments as a set of line strings.</documentation>
</annotation>
</element>
<element name="breakLines" type="gml:LineStringSegmentArrayPropertyType" minOccurs="0" maxOccurs="unbounded">
<annotation>
<documentation>Breaklines are lines of a critical
nature to the shape of the surface, representing local
ridges, or depressions (such as drainage lines) in the
surface. As such their constituent segments must be
included in the tin eve if doing so
violates the Delauny criterion. Break lines contains these
critical segments as a set of line strings.</documentation>
</annotation>
</element>
<element name="maxLength" type="gml:LengthType">
<annotation>
<documentation>Areas of the surface where data is not
sufficiently dense to assure reasonable calculation shall be
removed by adding a retention criterion for triangles based
on the length of their sides. For many triangle sides
exceeding maximum length, the adjacent triangles to that
triangle side shall be removed from the surface.</documentation>
</annotation>
</element>
<element name="controlPoint">
<annotation>
<documentation>The corners of the triangles in the TIN
are often referred to as pots. ControlPoint shall contain a
set of the GM_Position used as posts for this TIN. Since each
TIN contains triangles, there must be at least 3 posts. The
order in which these points are given does not affect the
surface that is represented. Application schemas may add
information based on ordering of control points to facilitate
the reconstruction of the TIN from the control points.</documentation>
</annotation>
<complexType>
<choice>
<element ref="gml:posList"/>
<group ref="gml:geometricPositionGroup" minOccurs="3" maxOccurs="unbounded"/>
</choice>
</complexType>
</element>
</sequence>
</extension>
</complexContent>
</complexType>