[postgis-devel] PolyhedralSurface - PostGIS 2.0
Olivier Courtin
olivier.courtin at oslandia.com
Fri Jan 22 03:24:21 PST 2010
Hi,
I've just began to (re)work on PolyhedralSurface type support for
future 2.0 branch,
before to spend more time on this, i wanted to check with you i have
green light to
go on further.
Any comments/reactions are welcomed !
Targeted usage: City Modelisation (LOD 0 to LOD 3)
Some current thoughts about implementation:
- Removing unused Integer types (POINTYPEI, LINESTINGTYPEI,
POLYGONTYPEI)
to have 3 news types availables.
- Add PolyhedralSurface type (cf SFS 1.2 and SQL/MM3)
EWKT look like
POLYHEDRALSURFACE(((0 0 0,0 1 0,1 1 0,0 0 0)),((0 0 0,1 0 0,1 0 1,0
0 1,0 0 0)),...)
So a bit like a 3DZ MULTIPOLYGON except that:
- every polygon mean a face (with all points on the same plan, and
without
self intersection)
- only one ring by polygon/face (i.e no hole)
- points must be defined couterclockwise
- Each face must be connected to the previous/next ones at least by
a point
And resulting PolyhedralSurface must be convex (and without hole)
- Don't use GEOS for common function on this type (as it 'only' handle
2D),
but implement in liblwgeom 3D primitives:
- ST_IsValid
- Point in Polyhedra test (and so others related 9DIM functions)
- Polyhedra minimal distance (to a point also to an another
polyhedra)
- ST_Centroid
- ST_Volume
- I/O functions
- extensions to GML and KML
- CityGML
- Collada
- X3D ?
- Check with others PostGIS Z dim compliants functions that this new
type
is rightly supported
- 3D Index issue (not even explore this point)
- Futures issues (to reach LOD 2 and 3):
- How to link a geometry to a texture
- How to handle Level Of Details (for example in CityGML)
--
Olivier
More information about the postgis-devel
mailing list