[postgis-users] Filter 3D points with postgis, st_disjoint st_intersects

Brian Modra brian at zwartberg.com
Tue Oct 13 23:33:53 PDT 2009


2009/10/14 Bruno Friedmann <bruno at ioda-net.ch>:
> Hi all, I've just discover that I've a trouble (another) with 3D.
>
> I've 2 set of records, one is full, the other have some hole inside.
> I'm looking a way to extract ( building some 3d polygons or 3d lines ) point that are in the first full set, not present in the
> second. ( Find the hole )
>
> I was thinking about using st_intersects &| st_disjoint but I realize that
>
> select st_disjoint(
> st_setsrid(st_makepoint(585000, 226500, 0),21781),
> st_setsrid(st_makepoint(585000, 226500, 100),21781)
> )
> ,
> st_intersects(
> st_setsrid(st_makepoint(585000, 226500, 0),21781),
> st_setsrid(st_makepoint(585000, 226500, 100),21781)
> )
>
> return false,true ... which should return true,false.

I think whats happening is that although the coords are stored
x,y,z... the calculations project them first.
So its not a 3D comparison.

>
> Did I need to invent my st_intersects3D function which would you st_intersects with X,Y and an another check on Z equality ?
>
> Did you think it's a good idea.
>
> PS : I'm using postgis 1.3.5 now, did the 1.4.0 release could help me in this case ?
>
> Many thanks in advance for your precious advise
>
>
> --
>
>     Bruno Friedmann
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>



-- 
Brian Modra   Land line: +27 23 5411 462
Mobile: +27 79 69 77 082
5 Jan Louw Str, Prince Albert, 6930
Postal: P.O. Box 2, Prince Albert 6930
South Africa
http://www.zwartberg.com/



More information about the postgis-users mailing list