Ok thanks! On Tue, Oct 30, 2012 at 11:04 AM, Nicolas Ribot <nicolas.ri...@gmail.com>wrote:
> st_dumpRings will return the rings (closed linestrings) composing the > polygon (exterior first, then interiors) > and st_dumpPoints will return all the points forming the rings, in the > right order. > > Nicolas > > > On 30 October 2012 10:56, Ed Linde <edoli...@gmail.com> wrote: > >> Ok, for a polygon, is there a good postgis function that can return the >> edges to me in the >> right sequence? Or at least the points that constitute the polygon in the >> right order, so I can >> generate the edges in a script? >> >> Thanks, >> Ed >> >> >> On Tue, Oct 30, 2012 at 10:46 AM, Ed Linde <edoli...@gmail.com> wrote: >> >>> Ah drat! Ok then I have to basically do edge intersection tests by >>> myself. >>> Ah well. bad news! :( >>> >>> >>> On Tue, Oct 30, 2012 at 10:44 AM, Nicolas Ribot <nicolas.ri...@gmail.com >>> > wrote: >>> >>>> Hi, >>>> >>>> st_intersection is only suitable for 2D operations. Third dimension is >>>> not taken into account. >>>> >>>> Nicolas >>>> >>>> On 30 October 2012 09:44, Ed Linde <edoli...@gmail.com> wrote: >>>> >>>>> Hi All, >>>>> Is there a simpler test I can do? I am quite sure that I am probably >>>>> not using the right >>>>> function in my SQL, or not doing the intersection test correctly. Is >>>>> there any simpler >>>>> way to test this 3D intersection? Am waiting on the postgis gurus to >>>>> come along and >>>>> give me some ideas, coz I am at my wits ends on this one! :) The >>>>> polygons look good >>>>> to me when I visualize them, but don't get how all triangles are found >>>>> as intersecting? >>>>> Anyway will wait. >>>>> >>>>> Cheers, >>>>> Ed >>>>> >>>>> On Tue, Oct 30, 2012 at 9:00 AM, Ed Linde <edoli...@gmail.com> wrote: >>>>> >>>>>> Hi All, >>>>>> I am having some troubles getting the *ST_Intersect* function to >>>>>> work with 3D polygons. >>>>>> I have a table to hold triangles as polygons in *"small_tris"* >>>>>> Another table for holding the polygonal faces of a 3D voronoi diagram >>>>>> in *"vfaces"* >>>>>> So now I am trying to do an intersection between the triangles and >>>>>> the voronoi faces >>>>>> to get the triangles that intersect with the faces. And it seems that >>>>>> *ALL* triangles >>>>>> are intersecting. I have attached a PDF where I have plotted the >>>>>> triangles and the >>>>>> voronoi cells. so the box around in red and blue with a major face >>>>>> going through is >>>>>> the voronoi diagram. The Voronoi partition in 3D is shown at the >>>>>> bottom too for clarity >>>>>> Can someone please help and let me know what am I doing wrong here? >>>>>> Is the select assuming something? So the polygons are flat and the >>>>>> intersections >>>>>> should just be lines or points. I am under some pressure to get this >>>>>> to work, so if >>>>>> anyone needs more information to help, the please let me know! :) >>>>>> >>>>>> Cheers, >>>>>> Ed >>>>>> >>>>>> *-- TABLE SCHEMAS* >>>>>> bounds=# \d vfaces; >>>>>> Table "public.vfaces" >>>>>> Column | Type | Modifiers >>>>>> ----------+----------+----------- >>>>>> gen_id | integer | >>>>>> geomtext | geometry | >>>>>> >>>>>> bounds=# \d small_tris; >>>>>> Table "public.small_tris" >>>>>> Column | Type | Modifiers >>>>>> ----------+----------+----------- >>>>>> id | integer | not null >>>>>> v0 | integer | >>>>>> v1 | integer | >>>>>> v2 | integer | >>>>>> geomtext | geometry | >>>>>> Indexes: >>>>>> "small_tris_pkey" PRIMARY KEY, btree (id) >>>>>> "small_idx" gist (geomtext) >>>>>> >>>>>> >>>>>> * >>>>>> -- TABLE CONTENT* >>>>>> bounds=# select id, st_astext( geomtext ) from small_tris; >>>>>> id | st_astext >>>>>> ----+------------------------------------------------------- >>>>>> 0 | POLYGON Z ((10 10 805,20 10 809,10 20 814,10 10 805)) >>>>>> 1 | POLYGON Z ((10 20 814,20 10 809,20 20 819,10 20 814)) >>>>>> 2 | POLYGON Z ((20 20 819,30 10 809,30 20 812,20 20 819)) >>>>>> 3 | POLYGON Z ((30 10 809,20 20 819,20 10 809,30 10 809)) >>>>>> 4 | POLYGON Z ((30 20 812,30 10 809,40 10 826,30 20 812)) >>>>>> 5 | POLYGON Z ((20 20 819,30 20 812,20 30 827,20 20 819)) >>>>>> 6 | POLYGON Z ((10 20 814,20 20 819,20 30 827,10 20 814)) >>>>>> 7 | POLYGON Z ((10 40 805,10 30 814,20 30 827,10 40 805)) >>>>>> 8 | POLYGON Z ((10 50 804,10 40 805,20 40 807,10 50 804)) >>>>>> 9 | POLYGON Z ((20 30 827,20 40 807,10 40 805,20 30 827)) >>>>>> 10 | POLYGON Z ((30 30 817,20 40 807,20 30 827,30 30 817)) >>>>>> 11 | POLYGON Z ((30 40 816,20 50 809,20 40 807,30 40 816)) >>>>>> 12 | POLYGON Z ((20 40 807,20 50 809,10 50 804,20 40 807)) >>>>>> 13 | POLYGON Z ((10 30 814,10 20 814,20 30 827,10 30 814)) >>>>>> 14 | POLYGON Z ((30 30 817,20 30 827,30 20 812,30 30 817)) >>>>>> 15 | POLYGON Z ((30 20 812,40 20 823,30 30 817,30 20 812)) >>>>>> 16 | POLYGON Z ((40 20 823,30 20 812,40 10 826,40 20 823)) >>>>>> 17 | POLYGON Z ((40 20 823,40 10 826,50 10 803,40 20 823)) >>>>>> 18 | POLYGON Z ((30 30 817,40 20 823,40 30 814,30 30 817)) >>>>>> 19 | POLYGON Z ((40 20 823,50 20 808,40 30 814,40 20 823)) >>>>>> 20 | POLYGON Z ((50 20 808,40 20 823,50 10 803,50 20 808)) >>>>>> 21 | POLYGON Z ((40 30 814,50 20 808,50 30 816,40 30 814)) >>>>>> 22 | POLYGON Z ((30 30 817,40 30 814,40 40 800,30 30 817)) >>>>>> 23 | POLYGON Z ((30 40 816,40 40 800,30 50 813,30 40 816)) >>>>>> 24 | POLYGON Z ((30 40 816,30 30 817,40 40 800,30 40 816)) >>>>>> 25 | POLYGON Z ((30 50 813,40 40 800,40 50 817,30 50 813)) >>>>>> 26 | POLYGON Z ((30 40 816,30 50 813,20 50 809,30 40 816)) >>>>>> 27 | POLYGON Z ((50 40 821,40 50 817,40 40 800,50 40 821)) >>>>>> 28 | POLYGON Z ((50 50 809,40 50 817,50 40 821,50 50 809)) >>>>>> 29 | POLYGON Z ((50 40 821,40 40 800,50 30 816,50 40 821)) >>>>>> 30 | POLYGON Z ((40 30 814,50 30 816,40 40 800,40 30 814)) >>>>>> 31 | POLYGON Z ((30 30 817,30 40 816,20 40 807,30 30 817)) >>>>>> (32 rows) >>>>>> >>>>>> select st_astext(geomtext) from vfaces; >>>>>> >>>>>> st_astext >>>>>> >>>>>> ----------------------------------------------------------------------------------------------- >>>>>> POLYGON Z ((51 17.8 799,9 38.8 799,9 51 819.33333333333,19.4 51 >>>>>> 828,51 35.2 828,51 17.8 799)) >>>>>> POLYGON Z ((51 17.8 799,9 38.8 799,9 51 799,51 51 799,51 17.8 799)) >>>>>> POLYGON Z ((51 35.2 828,19.4 51 828,51 51 828,51 35.2 828)) >>>>>> POLYGON Z ((9 9 799,9 38.8 799,51 17.8 799,51 9 799,9 9 799)) >>>>>> POLYGON Z ((51 17.8 799,9 38.8 799,9 51 819.33333333333,19.4 51 >>>>>> 828,51 35.2 828,51 17.8 799)) >>>>>> POLYGON Z ((9 9 828,9 51 828,19.4 51 828,51 35.2 828,51 9 828,9 9 >>>>>> 828)) >>>>>> (6 rows) >>>>>> >>>>>> *select distinct a.id >>>>>> from small_tris a, vfaces b >>>>>> where st_intersects (a.geomtext, b.geomtext) >>>>>> order by a.id;* >>>>>> id >>>>>> ---- >>>>>> 0 >>>>>> 1 >>>>>> 2 >>>>>> 3 >>>>>> 4 >>>>>> 5 >>>>>> 6 >>>>>> 7 >>>>>> 8 >>>>>> 9 >>>>>> 10 >>>>>> 11 >>>>>> 12 >>>>>> 13 >>>>>> 14 >>>>>> 15 >>>>>> 16 >>>>>> 17 >>>>>> 18 >>>>>> 19 >>>>>> 20 >>>>>> 21 >>>>>> 22 >>>>>> 23 >>>>>> 24 >>>>>> 25 >>>>>> 26 >>>>>> 27 >>>>>> 28 >>>>>> 29 >>>>>> 30 >>>>>> 31 >>>>>> (32 rows) >>>>>> >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> postgis-users mailing list >>>>> postgis-users@postgis.refractions.net >>>>> http://postgis.refractions.net/mailman/listinfo/postgis-users >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> postgis-users mailing list >>>> postgis-users@postgis.refractions.net >>>> http://postgis.refractions.net/mailman/listinfo/postgis-users >>>> >>>> >>> >> >> _______________________________________________ >> postgis-users mailing list >> postgis-users@postgis.refractions.net >> http://postgis.refractions.net/mailman/listinfo/postgis-users >> >> > > _______________________________________________ > postgis-users mailing list > postgis-users@postgis.refractions.net > http://postgis.refractions.net/mailman/listinfo/postgis-users > >
_______________________________________________ postgis-users mailing list postgis-users@postgis.refractions.net http://postgis.refractions.net/mailman/listinfo/postgis-users