2 Replies Latest reply: Apr 15, 2013 1:24 AM by 1002750 RSS

    [Oracle 11.2.0.3] issue aggregation two interesected geometries

    1002750
      Hello,

      i've got some issue aggregating intersected geometries, i'm not sure if it's a bug, because i'm not "oracle expert" at all.....

      i've got 2 geometries from the same table, first i try to aggregate them correctly by doing a sdo_aggr_union
      the result geometry is a 2003 (polygon), ok, but the shape isn't good as u can see on the link : http://oi48.tinypic.com/sgskmc.jpg

      so i decided to use another method, i extracted the two geometries
      SELECT MDSYS.SDO_GEOMETRY(2003,2154,NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,1),MDSYS.SDO_ORDINATE_ARRAY(702222.130192308,7055494.23532051,702247.330512821,7055477.20807692,702263.676666667,7055488.78660256,702264.15873668,7055506.62319306,702280.703910256,7055503.77057692,702295.687884615,7055528.28980769,702256.008115944,7055525.98953125,702253.460320513,7055529.65198718,702249.907609149,7055525.63587868,702248.692692308,7055525.56544872,702249.188030304,7055524.82244173,702222.130192308,7055494.23532051)) as GEOM from dual; ==> GA

      SELECT MDSYS.SDO_GEOMETRY(2003,2154,NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,1),MDSYS.SDO_ORDINATE_ARRAY(702231.665448718,7055548.041410256,702241.20070512825044,7055529.651987179005283,702252.098141025629622,7055513.305833332994717,702269.125384615379182,7055513.305833332994717,702286.152628205128742,7055533.057435897001761,702288.8769871795026414,7055557.576666666017611,702260.2712179487513214,7055572.56064102501585)) as GEOM from dual ==> GB

      trying with sdo_union

      SELECT SDO_GEOM.SDO_UNION (GA.GEOM, GB.GEOM, 0.05) GEOM
      FROM GA, GB ;

      same result...

      so trying another method:
      getting the difference between the two geometries and aggregating this one with one of the two geometries:

      SELECT
      SDO_UTIL.APPEND ( T_A.GEOM, T_B.GEOM) G
      FROM
      (
      GEA
      ) T_a
      ,--UNION ALL
      (
      SELECT SDO_GEOM.SDO_DIFFERENCE (GEA.GEOM, GEB.GEOM, 0.05) GEOM FROM
      GEA,
      GEB
      ) T_B;

      i get a 2007 geometry, then doing a self sdo_aggr_union on it => same issue

      So i'm trying another method, asking why the aggregated geometry isn't like it should be on the oracle forums... :)

      when we look at the result geometry, it seems that one vertex has been destroyed/removed (on the picture link above, u can see on the left that one vertex has disappeared..

      if anyone already get this error and solved it, because i can't find a similar case on google/forums/etc..., i would be helpful :)

      Regards

      PS: Sorry if there are some mistakes in my text, i havn't been speaking english for a long time

      Anthony, FR

      Edited by: 999747 on 12 avr. 2013 06:49