## org.opengis.geometry.coordinate
Interface Tin

All Superinterfaces:
  GenericSurface, Geometry, OrientablePrimitive, OrientableSurface, PolyhedralSurface, Primitive, Surface, TransfiniteSet, TriangulatedSurface

    @UML(identifier="GM_Tin",
         specification=ISO_19107)
    public interface Tin

extends TriangulatedSurface

A triangulated surface that uses the Delaunay algorithm or a similar algorithm complemented with consideration for breaklines, stoplines and maximum length of triangle sides. These networks satisfy the Delaunay criterion away from the modifications: For each triangle in the network, the circle passing through its vertexes does not contain, in its interior, the vertex of any other triangle.

Since:
  GeoAPI 2.0
Version:
  ISO 19107
See Also:
  `GeometryFactory.createTin(java.util.Set<org.opengis.geometry.coordinate.Position>, java.util.Set<org.opengis.geometry.coordinate.LineString>, java.util.Set<org.opengis.geometry.coordinate.LineString>, double)`

Method Summary
`Set<LineString>` `getBreakLines()` 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.
`List<Position>` `getControlPoints()` The corners of the triangles in the TIN are often referred to as posts.
`double` `getMaxLength()` Maximal length for retention.
`Set<LineString>` `getStopLines()` Stoplines are lines where the local continuity or regularity of the surface is questionable.

Methods inherited from interface TriangulatedSurface
`getPatches`

Methods inherited from interface OrientablePrimitive
`getOrientation, getPrimitive`

Methods inherited from interface Primitive
`getComplexes, getComposite, getContainedPrimitives, getContainingPrimitives, getProxy`

Methods inherited from interface Geometry
`clone, distance, getBoundary, getBuffer, getCentroid, getClosure, getConvexHull, getCoordinateDimension, getCoordinateReferenceSystem, getDimension, getDistance, getEnvelope, getMaximalComplex, getMbRegion, getPrecision, getRepresentativePoint, isCycle, isMutable, isSimple, toImmutable, transform, transform`

Methods inherited from interface TransfiniteSet
`contains, contains, difference, equals, intersection, intersects, symmetricDifference, union`

Methods inherited from interface GenericSurface
`getArea, getPerimeter, getUpNormal`

Method Detail

### getStopLines

    @UML(identifier="stopLines",
         obligation=MANDATORY,
         specification=ISO_19107)
    Set<LineString> getStopLines()

  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. The attribute `stopLines` contains all these pathological segments as a set of line strings.

### getBreakLines

    @UML(identifier="breakLines",
         obligation=MANDATORY,
         specification=ISO_19107)
    Set<LineString> getBreakLines()

  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 even if doing so violates the Delaunay criterion. The attribute `breakLines` contains these critical segments as a set of line strings.

### getMaxLength

    @UML(identifier="maxLength",
         obligation=MANDATORY,
         specification=ISO_19107)
    double getMaxLength()

  Maximal length for retention. Areas of the surface where the data is not sufficiently dense to assure reasonable calculations shall be removed by adding a retention criterion for triangles based on the length of their sides. For any triangle sides exceeding maximum length, the adjacent triangles to that triangle side shall be removed from the surface.

### getControlPoints

    @UML(identifier="controlPoint",
         obligation=MANDATORY,
         specification=ISO_19107)
    List<Position> getControlPoints()

  The corners of the triangles in the TIN are often referred to as posts. The attribute `controlPoint` shall contain a set of the positions 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 the ordering of the control points to facilitate the reconstruction of the TIN from the control points.

Copyright © 1994-2008 Open Geospatial Consortium. All Rights Reserved.