ARCGIS PRO SDK 要素空间关系

一、要素与要素查询,返回的是bool值

       1、 Touches  判断几何要素是否接触       

              Touches    如果 geometry1 与 geometry2 接触,则返回 true,否则 false。
              touches = GeometryEngine.Instance.Touches(Geometry1, Geometry2)

           2、Within  判断第一个几何要素是否在第二个几何要素内部

                 geometry1 位于 geometry2 内,则返回 true

         3、Disjoint 如果geometry1 和 geometry2 不相交,则返回 true
              disjoint = GeometryEngine.Instance.Disjoint(line1, poly1)

4、Crosses:如果一条折线仅共享一个共同点,则该折线将与另一个折线相交,其中至少一个点不是端点。如果折线的至少一条路径部分在面内,部分在面外,则折线穿过面。

5、Contains 如果 geometry1 包含 geometry2,则返回 true。
Contains 与 Within 相反。也就是说,当且仅当 geometry2 位于 geometry1 中时,geometry1 才包含 geometry2。

6、Distance 返回测量两个几何图形之间的平面距离

7、Equals:如果 geometry1 和 geometry2 占用相同的空间,则返回 true
     GeometryEngine.Instance.Equals(Geometry1, Geometry2)

8、Intersects 如果 geometry1 和 geometry2 相交,则返回 true

9、Overlaps:如果 geometry1 和 geometry2 重叠,则返回 true

二、要素与要素空间运算,返回的是Geometry对象

   1、SymmetricDifference :几何体减去重合部分的并集。

        Geometry = GeometryEngine.Instance.SymmetricDifference(Geometry1, Geometry2)

   2、Union 并集运算

        Geometry = GeometryEngine.Instance.Union(Geometry1, Geometry2)

3、SlicePolygonIntoEqualParts 等面积分割

       dim polys as IReadOnlyList (of Polygon)=  SlicePolygonIntoEqualParts(Polygon,numParts,angle,SliceType)
       Polygon:要切片的多边形。
       numParts:要将多边形切成的等面积部分的数量。必须大于 1。
       angle:角度(以弧度为单位)在切片之前旋转多边形。角度是从正 X 轴逆时针方向测量的。
       sliceType:控制多边形的切片方式;成条状或块状。SliceType.Strips或SliceType.Blocks

4、Difference 对两个几何图形执行拓扑差分运算,返回第一个几何要素减去公共范围的新几何要素。  
      Geometry = GeometryEngine.Instance.Difference(poly2, poly1)

5、Cut :将此几何图形拆分为多个部分。折线最多会分成两部分。

Dim polys as IReadOnlyList (of Polygon)= GeometryEngine.Instance.Cut(multipart,Polyline)


6、Clip 构造通过包络裁剪几何图形而创建的多边形,裁剪的几何图形

Dim polys as IReadOnlyList (of Polygon)= GeometryEngine.Instance.Clip(Geometry , Envelope)

7、Intersection(Geometry1,Geometry2)  构造两个几何图形之间的集合论交集。

    Geometry= GeometryEngine.Instance.Intersection(Geometry1,Geometry2)

如果 geometry1 是 MapPoint,geometry2 是折线,则返回的几何将是 MapPoint。
如果两个输入几何图形都是包络,则将返回包络。
如果一个输入几何图形是包络,另一个是多边形,则将返回一个多边形。
假设 geometry1 是折线,geometry2 是折线,并且它们在两个点上相互交叉。交点是多点,但将返回空折线。
在这种情况下,如果希望返回的几何图形是输入几何图形相交的多点图形,可使用 Intersection(Geometry,Geometry,GeometryDimensionType)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值