Name

ST_3DDifference — 3차원 차이를 수행합니다.

Synopsis

geometry ST_3DDifference(geometry geom1, geometry geom2);

설명

geom2의 일부분이 아닌 geom1의 부분을 반환합니다.

2.2.0 버전부터 사용할 수 있습니다.

This method needs SFCGAL backend.

This method implements the SQL/MM specification.

SQL-MM IEC 13249-3: 5.1

This function supports 3d and will not drop the z-index.

This function supports Polyhedral surfaces.

This function supports Triangles and Triangulated Irregular Network Surfaces (TIN).

예시

PostGIS ST_AsX3D 를 통해 3차원 영상을 생성한 다음 X3Dom HTML 자바스크립트 렌더링 라이브러리 를 이용해서 HTML로 렌더링합니다.

SELECT ST_Extrude(ST_Buffer(ST_GeomFromText('POINT(100 90)'),
 50, 'quad_segs=2'),0,0,30) AS geom1,
        ST_Extrude(ST_Buffer(ST_GeomFromText('POINT(80 80)'),
 50, 'quad_segs=1'),0,0,30) AS geom2;
                

원본 3차원 도형들이 중첩합니다. geom2가 제거될 부분을 나타냅니다.

SELECT ST_3DDifference(geom1,geom2)
FROM ( SELECT ST_Extrude(ST_Buffer(ST_GeomFromText('POINT(100 90)'),
 50, 'quad_segs=2'),0,0,30) AS geom1,
        ST_Extrude(ST_Buffer(ST_GeomFromText('POINT(80 80)'),
 50, 'quad_segs=1'),0,0,30) AS geom2 ) As t;

geom2를 제거하고 남은 부분

참고

ST_Extrude, ST_AsX3D, ST_3DIntersection ST_3DUnion