wiki:OgrTriangulatedPolyhedralSurfaces

Introduce Triangulated Surface, Polyhedral Surface and Triangle API in the OGRGeometry core and implement their support in OGR drivers for GDAL

Short description

Introduce Triangulated Surface, Polyhedral Surface and Triangle API in the OGRGeometry core and implement their support in OGR drivers for GDAL

Abstract

The current OGR core doesn't include three geometries according to OGC standards - Triangular Irregular Networks, Polyhedral Surfaces and Triangles. The work done addresses the addition of the same in OGR core as well as the introduction of support in existing OGR drivers for these geometries.

Motivation

As of now, the OGRGeometry class [the base class from which all the subtypes are derived] is limited to OGRCompoundCurve, OGRCircularString, OGRLinearRing, OGRMultiLineString, OGRMultiPoint, OGRMultiPolygon, OGRMultiCurve, OGRSimpleCurve, OGRCurvePolygon and OGRPolygon. According to the standard mentioned by OGC 06-103r4, OGR still lacks proper implementation for a PolyhedralSurface?, Triangle and TriangulatedSurface?. This is correspondingly reflected in drivers provided by OGR. Another aspect of implementing a suitable API for the said geometries in the core is that it will help OGR progress further in the introduction of drivers, such as CityGML which heavily utilise such network based geometries. Proper implementation of OGR's 3D geometries would also bring closer interoperability with PostGIS-based 3D functions.

Plan & Timeline

The detailed timeline is as follows -

Start Date End Date Task
23 May, 2016 30 May, 2016 Begin work on the implementation of OGRTriangle
31 May, 2016 6 June, 2016 Complete API of OGRTriangle; construct a SWIG binding; test with ogrtest/gdaltest
7 June, 2016 13 June, 2016 Begin work on the implementation of OGRPolyhedralSurface
14 June, 2016 20 June, 2016 Finish API of OGRPolyhedralSurface; build a SWIG binding and write tests
21 June, 2016 27 June, 2016 Begin work on the implementation of OGRTriangulatedSurface
28 June, 2016 4 July, 2016 Complete API of OGRTriangulatedSurface; construct SWIG bindings; pass tests
5 July, 2016 11 July, 2016 Research further, modify and re-write Shapefile
12 July, 2016 18 July, 2016 Research further, modify and re-write PostGIS
19 July, 2016 25 July, 2016 Research further, modify and re-write DXF
26 July, 2016 1 August, 2016 Research further, modify and re-write GML
2 August, 2016 8 August, 2016 Clean up, start testing drivers
9 August, 2016 15 August, 2016 Finish the testing of drivers and move on to documentation
16 August, 2016 23 August, 2016 Finish documentation and make a RFC

Project progress

All progress made can be viewed there:

Github: ​https://github.com/avyavkumar/gdal

Blog: ​https://github.com/avyavkumar/gdal/wiki

Last modified 4 years ago Last modified on May 30, 2016, 11:32:00 PM