CG_3DDifference — 执行 3D 差集
geometry CG_3DDifference(geometry geom1, geometry geom2);
返回 geom1 中不属于 geom2 的部分。
可用性: 3.5.0
             此方法需要 SFCGAL 后端。
 此方法需要 SFCGAL 后端。
             此方法实现了 SQL/MM 规范。 SQL-MM IEC 13249-3: 5.1
 此方法实现了 SQL/MM 规范。 SQL-MM IEC 13249-3: 5.1
             此函数支持 3D,并且不会删除 z 索引。
 此函数支持 3D,并且不会删除 z 索引。
             此函数支持多面体表面。
 此函数支持多面体表面。
             此函数支持三角形和不规则三角网表面 (TIN)。
 此函数支持三角形和不规则三角网表面 (TIN)。
3D 图像是使用 PostGIS ST_AsX3D 生成的,并使用 X3Dom HTML Javascript 渲染库在 HTML 中渲染。
| 
 SELECT CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(100 90)'),
                                50, 'quad_segs=2'),0,0,30) AS geom1,
                                CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(80 80)'),
                                50, 'quad_segs=1'),0,0,30) AS geom2;
                            
  原始 3D 几何图形叠加。 geom2 是将被移除的部分。 | 
 SELECT CG_3DDifference(geom1,geom2)
                            FROM ( SELECT CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(100 90)'),
                            50, 'quad_segs=2'),0,0,30) AS geom1,
                            CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(80 80)'),
                            50, 'quad_segs=1'),0,0,30) AS geom2 ) As t;
  移除 geom2 后剩下的部分 |