Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Pobierz punkt środkowy polilinii SDO.GEOMETRY

Oracle Spatial ma liniowe odniesienie pakiet o nazwie SDO_LRS . Może być użyty do znalezienia współrzędnych punktu środkowego polilinii.

--In this case, 'sdo' is the name of the sdo_geometry column.

sdo_lrs.convert_to_std_geom(sdo_lrs.locate_pt(sdo_lrs.convert_to_lrs_geom(sdo,3)
    ,sdo_geom.sdo_length(sdo,3)/2)).sdo_point.x as midpoint_x,

sdo_lrs.convert_to_std_geom(sdo_lrs.locate_pt(sdo_lrs.convert_to_lrs_geom(sdo,3)
    ,sdo_geom.sdo_length(sdo,3)/2)).sdo_point.y as midpoint_y

Punkty bonusowe:

W ten sposób SDE.ST_GEOMETRY można przekonwertować na SDO_GEOMETRY w celu uzyskania współrzędnych punktu środkowego:

select
    sdo_lrs.convert_to_std_geom(sdo_lrs.locate_pt(sdo_lrs.convert_to_lrs_geom(sdo,3),sdo_geom.sdo_length(sdo,3)/2)).sdo_point.x as midpoint_x,
    sdo_lrs.convert_to_std_geom(sdo_lrs.locate_pt(sdo_lrs.convert_to_lrs_geom(sdo,3),sdo_geom.sdo_length(sdo,3)/2)).sdo_point.y as midpoint_y
from
    (select
        sdo_util.from_wktgeometry(sde.st_astext(shape)) as sdo
    from
        roads)

Ta odpowiedź została zainspirowana odpowiedzią na temat Code Review:Oblicz środek polilinii .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Monitorowanie SQL w SQL Developer

  2. Wywoływanie funkcji SQL Oracle PL z Excela VBA

  3. N-ta maksymalna pensja w Oracle

  4. Pojawia się błąd podczas korzystania z metody PrepareStatement z interwałem w zapytaniu

  5. Usuń z dołączeniem w Oracle sql Query