2015-01-07 1 views
0

Я относительный новичок в Oracle, но полный новичок для опций Spatial и Graph, поэтому, пожалуйста, расскажите со мной. :)Oracle Spatial - UTM to Lat/Long генерирует смещение

Я пытаюсь преобразовать, что предположительно UTM Zone 33, Северное полушарие (WGS 84) SRID (Норвегия) в Lat/Long (долгота/широта (WGS 84) SRID) через Oracle Spatial и нашел неплохую примеры в stackoverflow. Проблема заключается в том, что когда-либо используемая SRID в качестве исходной (которая ссылается на UTM 33N), результат в lat/long, кажется, компенсируется и помещает любое местоположение в оффшорный режим на запад.

Код:

select t.sdo.sdo_point.x as x 
    , t.sdo.sdo_point.y as y 
    from (select sdo_cs.transform( 
         sdo_geometry(2001 
            , 82347 -- UTM Zone 33N SRID, 
            , SDO_POINT_TYPE(a.coordinate_x,a.coordinate_y,NULL) 
            , null 
            , null) 
          , 8307  --Longitude/Latitude (WGS 84) SRID 
          ) as sdo 
     from table a 
    ) t; 

Один из моих коллег на самом деле зашиты шаг за шагом calcuation в SAS, основанный на: http://www.uwgb.edu/dutchs/usefuldata/utmformulas.htm)

и его результат был

Northing 6716777, Easting 40137 - > Lat 60.321808644 Long 6.6585114124

который фактически соответствует Картам Google.

Код сверху, для одних и тех же входных значений для меня создает:

64,0777530402641 +0,231518684247992

Я получаю аналогичные значения для других НИПИ как 32633.

Любые идеи, что я делаю не так? :)

ответ

0

Ooops, кажется, в базе данных x и y наоборот (с меткой), при повороте, отлично работает!

+0

Наверное, нет, в геодезии декартова ось обменивается по сравнению с математическим соглашением, см. [Восточный и северный] (https://en.wikipedia.org/wiki/Easting_and_northing) –