查看PDF手册有方法如下:
8.10.13 ST_Intersection
ST_Intersection — (T) Returns a geometry that represents the shared portion of geomA and geomB. The geography implementation
does a transform to geometry to do the intersection and then transform back to WGS84.
Synopsis
geometry ST_Intersection( geometry geomA , geometry geomB );
geography ST_Intersection( geography geogA , geography geogB );
Description
Returns a geometry that represents the point set intersection of the Geometries.
In other words - that portion of geometry A and geometry B that is shared between the two geometries.
If the geometries do not share any space (are disjoint), then an empty geometry collection is returned.
ST_Intersection in conjunction with ST_Intersects is very useful for clipping geometries such as in bounding box, buffer, region
queries where you only want to return that portion of a geometry that sits in a country or region of interest.
示例如下:
CREATE TABLE testintersection
(
geom geometry(Polygon,4326),
gid serial NOT NULL
);
insert into testIntersection values(st_geomfromtext('POLYGON((110 30,110 31, 111 31, 111 30, 110 30))',4326));
insert into testIntersection values(st_geomfromtext('POLYGON((110.5 30.5,110.5 31.5, 111.5 31.5, 111.5 30.5, 110.5 30.5))',4326));
insert into testIntersection select ST_Intersection(st_geomfromtext('POLYGON((110 30,110 31, 111 31, 111 30, 110 30))',4326), st_geomfromtext('POLYGON((110.5 30.5,110.5 31.5, 111.5 31.5, 111.5 30.5, 110.5 30.5))',4326));
使用QGIS查看效果如下
- 大小: 43.8 KB
分享到:
相关推荐
写一个C++程序,计算两个多边形的重叠面积 多边形class定义如下: class Polygon { public: Polygon(float* polygon, int vertex) : polygon(polygon), vertex(vertex) {}; private: float* polygon; // 坐标形式...
### AutoCAD中利用区域计算实现多边形的重叠与空洞检查 #### 一、引言 在地籍测量及地图制作过程中,确保不同宗地(土地块)与图斑(土地覆盖类型划分单元)之间的边界准确无误至关重要。传统方法通过人工比对各宗...
简单多边形的相交、合并算法。...这个demo程序只是介绍了多边形相交、合并的算法,针对简单凹凸多边形可以正常处理。算法仅供参考! 如需要支持内部有环的复杂多边形相交合并,请使用boost::polygon。
本项目聚焦于计算两个矩形之间的IOU面积和重叠率,这对于理解算法如何判断物体的检测精度至关重要。 首先,我们需要了解IOU的基本概念。IOU是两个矩形交集面积与并集面积的比值,公式可表示为: \[ IOU = \frac{...
Delphi 两个多边形求交集、并集、差集的源码,使用的是D5,非常古老的版本了,但能解决问题,程序使用标记法,速度非常快,解决了C语言中关于高精度重叠边的问题,示例程序是从CAD中读取多边形数据,方便演示各种...
并集操作是将两个多边形合并成一个,包含所有原始多边形的区域。这需要识别每个多边形的边界,并将它们连接起来,消除任何重复的边界部分,确保结果是连通且无孔洞的。 4. **差集操作**: 差集操作是从一个多边形...
在实际的IoU计算中,需要找出两个矩形的所有交点,然后利用这些交点构建出两个矩形重叠部分的新边界,进一步计算重叠区域的面积。 在实际应用中,如自动驾驶或无人机感知,3D旋转矩形的概念可能扩展到三维空间,...
- 当确定了两个或多边形重叠后,需要对重叠部分进行分割,然后合并成新的多边形。这可能涉及到复杂的几何操作,如Jordan曲线定理和Sweep Line算法。 3. **面积计算**: - 重叠区域的面积计算可以使用Green's ...
% 点乘得到重叠区域 I = I1 .* I2; % 计算面积 L_b = bwlabel(I); % 获取连通域 L_b1 = bwlabel(I1); L_b2 = bwlabel(I2); STATS = regionprops(L_b, 'Area', 'BoundingBox', 'Centroid'); % 计算区域...
7. **重叠区域计算**:如果两个多边形相交,还需要计算它们的重叠部分,这可能涉及到更复杂的几何分割算法。 8. **用户交互**:在VC++环境中,通过MapObjects库,用户可以直观地绘制和移动多边形,实现交互式操作。...
1. **多边形交集**: 找到两个多边形共享的边界和内部区域,形成新的多边形。算法实现通常涉及线段的相交检测。 2. **多边形并集**: 将两个多边形的所有部分合并成一个大的多边形。这可能需要处理重叠部分,确保结果...
2. **计算边界**:对于每个扫描线,找出与其相交的边,通常会得到两个边界点。如果扫描线在多边形的上方,边界点表示进入和离开多边形;如果在下方,则表示离开和进入。 3. **遍历边界**:根据边界点,我们可以使用...
本范例,"SuperMap iObjects Java 8C 批量去除面对象重叠区域",就是针对这一问题提供了解决方案。SuperMap iObjects是SuperMap公司开发的一套GIS核心组件,支持多种编程语言,Java 8C版本则专门针对Java平台。 1. ...
这通常涉及计算每一对边的交叉点,如果存在交叉点,则表示两个多边形有重叠部分。 4. **构造新边界**:在确定了多边形的交集后,需要构建新的边界。这可能包括保留原多边形的部分边,以及从交叉点生成的新边。 5. ...
5. **相交面积计算**:计算两个或多个多边形的相交部分,需要用到几何交集算法。MATLAB没有内建的函数直接处理这个问题,但可以通过自定义算法实现,例如使用扫描线算法或分治法。首先找出所有交点,然后根据交点...
这个函数会按像素级别进行比较,返回的结果是两个图形重叠部分的像素值。 6. **结果展示**:最后,将计算得到的交集图像显示出来,可以使用`imshow()`函数,配合`waitKey()`控制图像窗口的显示时间。 项目链接中的...
当两个矩形在平面上没有任何重叠部分时,我们称它们为相离状态。为了快速判断两个矩形是否相离,可以采用基于边界坐标的方法。具体而言,如果一个矩形A的X最大值小于另一个矩形B的X最小值,或者A的X最小值大于B的X...
具体而言,如果一个多边形A的某个顶点在其一定范围内探测到了另一个多边形B,并且从顶点到多边形B的所有边的距离都大于零,那么就可以断定这两个多边形之间存在间隙。反之,如果顶点与相邻多边形的某些边距离为零,...
为了计算重叠面积,我们需要有至少两个多边形对象,这两个对象在空间上相互重叠。通常,这个过程包括以下几个步骤: 1. **加载地图数据**:首先,你需要将包含重叠图形的数据源(如Shapefile、GeoDatabase或自定义...