티스토리 뷰

Skill/DB

[oracle] SDO_GEOMETRY TYPE의 정의

진열사랑 2020. 10. 11. 21:59

shape SDO_GEOMETRY 은 다음과 같이 정의된다.

CREATE TYPE sdo_geometry AS OBJECT ( 
 SDO_GTYPE NUMBER,  
 SDO_SRID NUMBER, 
 SDO_POINT SDO_POINT_TYPE, 
 SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY, 
 SDO_ORDINATES SDO_ORDINATE_ARRAY); 

 

CREATE TYPE sdo_point_type AS OBJECT ( 
   X NUMBER, 
   Y NUMBER, 
   Z NUMBER); 
CREATE TYPE sdo_elem_info_array AS VARRAY (1048576) of NUMBER; 
CREATE TYPE sdo_ordinate_array AS VARRAY (1048576) of NUMBER; 

 

SDO_GTYPE는 4자리 숫자로.. DLTT를 나타낸다.

D : dimensions의 숫자이다. 만약 2라면 2차원(2dimension)

L : 3-dimensional Linear Referencing System(LRS) geometry를 위한 것을 나타낸다. 만약 non-LRS geometry라면 0값을 갖는다.

TT : 

00 - UNKNOWN_GEOMETRY

01 - POINT

02 - LINE or CURVE

03 - POLYGON or SURFACE

04 - COLLECTION

05 - MULTIPOINT

06 - MULTILINE or MULTICURVE

07 - MULTIPOLYGON or MULTISURFACE

08 - SOLID

09 - MULTISOLID

 

SDO_SRID 는 geometry와 연관된 coordinate system (spatial reference system) 이다.

값이 NULL이면 관련된 coordinate system이 없는 것이다.

 

SDO_POINT NUMBER type 의 X, Y, and Z 값이다.

 

SDO_ELEM_INFO 는 SDO_ORDINATES 에 저장된 값을 해석하는 방법을 알려준다.

ㅇ  SDO_ELEM_INFO_ARRAY(1,1003,3)

 위 예에서 1은 SDO_STARTING_OFFSET 이다. SDO_ORDINATES 에 저장된 도형 ARRAY의 시작위치이다.

 위 예에서 1003은 SDO_ETYPE이다.  type of the element을 가리킨다.

 

SDO_ORDINATES 

oracle documentation : docs.oracle.com/en/database/oracle/oracle-database/18/spatl/spatial-datatypes-metadata.html#GUID-51A767CA-82EE-4475-8C8B-13E685C04934

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함