Changes between Version 4 and Version 5 of rfc64_triangle_polyhedralsurface_tin
- Timestamp:
- Dec 6, 2016, 8:04:41 AM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
rfc64_triangle_polyhedralsurface_tin
v4 v5 4 4 Contact: avyavkumar at gmail dot com, even.rouault at spatialys.com [[BR]] 5 5 Status: Development [[BR]] 6 Target version: GDAL 2.2 [[BR]] 6 7 7 8 == Summary == 8 As of now, the OGRGeometry class (found at [http://www.gdal.org/classOGRGeometry.html]) (the base class from which all the subtypes are derived) is limited to OGRCompoundCurve, OGRCircularString, OGRLinearRing, OGRMultiLineString, OGRMultiPoint, OGRMultiPolygon, OGRMultiCurve, OGRSimpleCurve, OGRCurvePolygon and OGRPolygon. [[BR]] 9 [[BR]] 10 This RFC addresses the addition of the following new geometries in OGRGeometry - [[BR]] 11 [[BR]] 12 Triangle - A subset of polygons, the fundamental difference is that it is made of 3 nodes only (actually 4, with the last one being the repetition of the first one) and ONLY ONE exterior boundary and NO interior polygons. [[BR]] 13 [[BR]] 14 PolyhedralSurface - A 3D figure made exclusively of Polygons.[[BR]] 15 [[BR]] 16 TriangulatedSurface - A subset of PolyhedralSurface; a 3D figure which consists exclusively of Triangles. [[BR]] 17 [[BR]] 9 10 As of now, the OGRGeometry class (found at [http://www.gdal.org/classOGRGeometry.html]) (the base class from which all the subtypes are derived) is limited to OGRCompoundCurve, OGRCircularString, OGRLinearRing, OGRMultiLineString, OGRMultiPoint, OGRMultiPolygon, OGRMultiCurve, OGRSimpleCurve, OGRCurvePolygon and OGRPolygon. 11 12 This RFC addresses the addition of the following new geometries in OGRGeometry: 13 * Triangle - A subset of polygons, the fundamental difference is that it is made of 3 nodes only (actually 4, with the last one being the repetition of the first one) and ONLY ONE exterior boundary and NO interior polygons. 14 * PolyhedralSurface - A 3D figure made exclusively of Polygons. 15 * TriangulatedSurface - A subset of PolyhedralSurface; a 3D figure which consists exclusively of Triangles. 16 18 17 == Reference documents == 19 [[BR]]20 The following was consulted for the geometries - [[BR]]21 18 22 19 * [http://portal.opengeospatial.org/files/?artifact_id=25355 OpenGIS Simple Feature Access Part 1 : Common Architecture,v 1.2.1], a.k.a. SFA 1.2.1 23 24 20 * [https://github.com/postgis/postgis/blob/svn-trunk/doc/bnf-wkt.txt BNF of WKT encoding]: extracted from SQL/MM Part 3 25 26 21 * [https://github.com/postgis/postgis/blob/svn-trunk/doc/bnf-wkb.txt BNF of WKB encoding]: extracted from SQL/MM Part 3 27 [[BR]] 22 28 23 == Core changes == 29 24 … … 157 152 158 153 }}} 159 * The Triangulated Surface API is similar to Polyhedral Surface, and the MultiPolygon class was tweaked slightly to include methods to run which consisted of subgeometries of the form Triangle. (A MultiPolygon is strictly a collection of Polygons). These methods are internal to OGRMultiPolygon and cannot be accessed by a public user. For instance, the `OGRMultiPolygon::addGeom tryDirectly` method has a check that the subgeometry added to it should be of the type POLYGON. Rather than mess around with the existing function, a new function has been written which does not implement this check -154 * The Triangulated Surface API is similar to Polyhedral Surface, and the MultiPolygon class was tweaked slightly to include methods to run which consisted of subgeometries of the form Triangle. (A MultiPolygon is strictly a collection of Polygons). These methods are internal to OGRMultiPolygon and cannot be accessed by a public user. For instance, the `OGRMultiPolygon::addGeometryDirectly` method has a check that the subgeometry added to it should be of the type POLYGON. Rather than mess around with the existing function, a new function has been written which does not implement this check - 160 155 {{{ 161 156 /************************************************************************/