[postgis-users] PointM, PolyLineM, PolygonM, ...

strk at refractions.net strk at refractions.net
Thu Sep 23 09:39:55 PDT 2004


On Thu, Sep 23, 2004 at 09:03:18AM -0700, Paul Ramsey wrote:
> Please bear in mind that there are other uses for the higher dimensions 
> than Z and M. There could also be a time dimension (think of a GPS 
> track, for example). I don't like the idea that we are setting up 
> implicit uses for our higher dimensions (M shall always be the 4th 
> entry, Z shall always be the 3rd entry!).
> 
> I would rather anonymously fill out the higher dimensions using the 
> least storage space and have any function that expects to operate on 
> them sufficiently flexible to be pointed at the right coordinate space. 
> So if have have a measured_point(<linstring>,<%>) function, it needs a 
> third parameter, ordinate, to tell it which ordinate to look in for the 
> measure. measured_point(<linestring>,<%>,<ordinate = 3|4>).

This is a bigger problem then the one being discussed actually...
XYZ have well-defined semantics as for spatial handling, so
they should have well-known positions (IMHO).
For any other (non-spatial) coordinate I'm with you.

So postgis should provide functions to retrive X,Y,Z or M(#).
Geometry flags should state not only number of dimensions, but
number of *spatial* dimensions AND number of *other* dimensions.

Current (LWGEOM) API is far from ready for that.
Basic structures are POINT2D, POINT3D, POINT4D, where POINT4D have
x,y,z,m elements (in that order..)

Anyway... to consider this issue in pgsql2shp changes, how
would you do ? I imagine the case in which you use XY spatial
coordinates and M in 3d geometries so you want to dump TypeM
using postgis Z as M value...  

--strk;

> 
> strk at refractions.net wrote:
> >On Thu, Sep 23, 2004 at 12:12:28PM +0200, Pierrick Brihaye wrote:
> >
> >>Hi,
> >>
> >>strk at refractions.net a écrit :
> >>
> >>> Now that postgis supports up to 4 dimensions geometry, what do you
> >>
> >>>think should be done ? My vision is this:
> >>>
> >>>Type  <-> geometry2d
> >>>TypeM <-> geometry3d
> >>>TypeZ <-> geometry4d
> >>>
> >>>What do you think ?
> >>
> >>How long shall we pay for ESRI's weird data model ? :-)
> >>
> >>IMHO, the 3rd dimension has well-known semantics : Z.
> >>
> >>Therefore, any other dimension should be considered as a 4th one.
> >>
> >>Any other thoughts ?
> >
> >
> >I'm with you, but quetions are:
> >
> >1) how should we import TypeM shapefiles ?
> >	a) as x,y,Z,m // wasting Z space in postgis 
> >	b) as x,y,z   // interpreting M as Z
> >
> >2) how should we import TypeZ shapefiles ?
> >	a) as x,y,z,m // respecting shapefile meanings 
> >	b) as x,y,z,m // swapping M<->Z meaning
> >	c) as x,y,z   // discarding M
> >	d) as x,y,z   // using M, discarding Z
> >
> >3) how should we export geometry3d ?
> >	a) as TypeM // using M for Z values
> >	b) as TypeZ // wasting M space in shapefile
> >
> >3) how should we export geometry4d ?
> >	a) as TypeZ // respecting shapefile meanings (4th dim -> M)
> >	b) as TypeZ // swapping M<->Z meaning
> >
> >Does anyone see the light ?
> >I suppost some command line switches would do but finding an easy
> >interface is not straightforward ...
> >
> >--strk;
> >
> >
> >>Regards,
> >>
> >>-- 
> >>Pierrick Brihaye, informaticien
> >>Service régional de l'Inventaire
> >>DRAC Bretagne
> >>mailto:pierrick.brihaye at culture.gouv.fr
> >>+33 (0)2 99 29 67 78
> >>_______________________________________________
> >>postgis-users mailing list
> >>postgis-users at postgis.refractions.net
> >>http://postgis.refractions.net/mailman/listinfo/postgis-users
> >
> >_______________________________________________
> >postgis-users mailing list
> >postgis-users at postgis.refractions.net
> >http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users



More information about the postgis-users mailing list