1. /// <summary>
  2. /// 检测几何图形A是否包含几何图形B
  3. /// </summary>
  4. /// <param name="pGeometryA">几何图形A</param>
  5. /// <param name="pGeometryB">几何图形B</param>
  6. /// <returns>True为包含,False为不包含</returns>
  7. public static bool CheckGeometryContain(IGeometry pGeometryA, IGeometry pGeometryB)
  8. {
  9. IRelationalOperator pRelOperator = pGeometryA as IRelationalOperator;
  10. if (pRelOperator.Contains(pGeometryB))
  11. {
  12. return true;
  13. }
  14. else
  15. {
  16. return false;
  17. }
  18. }
  19.  
  20. /// <summary>
  21. /// 用于检测几何图形A,几何图形B几何图形是否相交
  22. /// </summary>
  23. /// <param name="pGeometryA">几何图形A</param>
  24. /// <param name="pGeometryB">几何图形B</param>
  25. /// <returns>True为相交,False为不相交</returns>
  26. public static bool CheckGeometryCrosses(IGeometry pGeometryA, IGeometry pGeometryB)
  27. {
  28. IRelationalOperator pRelOperator = pGeometryA as IRelationalOperator;
  29. if (pRelOperator.Crosses(pGeometryB))
  30. {
  31. return true;
  32. }
  33. else
  34. {
  35. return false;
  36. }
  37. }
  38. /// <summary>
  39. /// 用于检测几何图形A,几何图形B几何图形是否相连
  40. /// </summary>
  41. /// <param name="pGeometryA">几何图形A</param>
  42. /// <param name="pGeometryB">几何图形B</param>
  43. /// <returns>True为相连,False为不相连</returns>
  44. public static bool CheckGeometryTouches(IGeometry pGeometryA, IGeometry pGeometryB)
  45. {
  46. IRelationalOperator pRelOperator = pGeometryA as IRelationalOperator;
  47. if (pRelOperator.Touches(pGeometryB))
  48. {
  49. return true;
  50. }
  51. else
  52. {
  53. return false;
  54. }
  55. }
  56. /// <summary>
  57. /// 用于检测几何图形A,几何图形B几何图形是否不相交
  58. /// </summary>
  59. /// <param name="pGeometryA">几何图形A</param>
  60. /// <param name="pGeometryB">几何图形B</param>
  61. /// <returns>True为不相交,False为相交</returns>
  62. public static bool CheckGeometryDisjoint(IGeometry pGeometryA, IGeometry pGeometryB)
  63. {
  64. IRelationalOperator pRelOperator = pGeometryA as IRelationalOperator;
  65. if (pRelOperator.Disjoint(pGeometryB))
  66. {
  67. return true;
  68. }
  69. else
  70. {
  71. return false;
  72. }
  73. }
  74. /// <summary>
  75. /// 用于检测几何图形A,几何图形B几何图形是否有重叠
  76. /// </summary>
  77. /// <param name="pGeometryA">几何图形A</param>
  78. /// <param name="pGeometryB">几何图形B</param>
  79. /// <returns>True为有重叠,False为无重叠</returns>
  80. public static bool CheckGeometryOverlaps(IGeometry pGeometryA, IGeometry pGeometryB)
  81. {
  82. IRelationalOperator pRelOperator = pGeometryA as IRelationalOperator;
  83. if (pRelOperator.Overlaps(pGeometryB))
  84. {
  85. return true;
  86. }
  87. else
  88. {
  89. return false;
  90. }
  91. }
  92. /// <summary>
  93. /// 用于检测几何图形A是否被包含于几何图形B几何图形
  94. /// </summary>
  95. /// <param name="pGeometryA">几何图形A</param>
  96. /// <param name="pGeometryB">几何图形B</param>
  97. /// <returns>True为包含,False为不包含</returns>
  98. public static bool CheckGeometryWithin(IGeometry pGeometryA, IGeometry pGeometryB)
  99. {
  100. IRelationalOperator pRelOperator = pGeometryA as IRelationalOperator;
  101. if (pRelOperator.Within(pGeometryB))
  102. {
  103. return true;
  104. }
  105. else
  106. {
  107. return false;
  108. }
  109. }

1.ArcGis几何图形之几何计算的更多相关文章

  1. 1549: Navigition Problem (几何计算+模拟 细节较多)

    1549: Navigition Problem Submit Page    Summary    Time Limit: 1 Sec     Memory Limit: 256 Mb     Su ...

  2. Jack Straws POJ - 1127 (几何计算)

    Jack Straws Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5428   Accepted: 2461 Descr ...

  3. Direct2D 几何计算和几何变幻

    D2D不仅可以绘制,还可以对多个几何图形对象进行空间运算.这功能应该在GIS界比较吃香. 这些计算包括: 合并几何对象,可以设置求交还是求并,CombineWithGeometry 边界,加宽边界,查 ...

  4. ArcGIS应用——四种计算图斑面积的方法

    ArcGIS中有多种方法可计算出图斑面积,本文总结了四种方法,是否可堪称史上最全? 1.计算几何 本人认为这是最适合非专业人士的方法,直接利用ArcGIS中的计算几何功能进行计算. a.首先添加一do ...

  5. ArcGIS 重新创建几何服务(GeometryService)

    #参考官方网址:http://enterprise.arcgis.com/zh-cn/server/10.4/administer/windows/re-creating-the-geometry-s ...

  6. arcgis中栅格矢量计算技巧收藏

    ​ ​编辑 一.计算面积 ( 可以帮我们计算小班面积 )添加 AREA 字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED -->把下 ...

  7. arcgis python添加几何属性

    import arcpy import numpy import math def AddGeometryAttributes(fc, geomProperties, lUnit, aUnit, cs ...

  8. ArcGIS 地类净面积计算工具

    地类净面积计算工具可以自己定义图层.字段.地类代码计算任意图层的椭球面积.线状地物扣除.零星扣除和其他扣除,计算地类净面积计算:可以用于二调数据图斑地类.规划地块和基本农田等等需要计算净面积的都可以. ...

  9. UVALive 6092 Catching Shade in Flatland --枚举+几何计算

    题意:x=[-200,200],y=[-200,200]的平面,一天中太阳从不同角度射到长椅(原点(0,0))上,有一些树(用圆表示),问哪个时刻(分钟为单位)太阳光线与这些圆所交的弦长总和最长.太阳 ...

随机推荐

  1. wpf绑定静态变量,模拟rem单位

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; usin ...

  2. scss基础

    1.变量$ 全局 局部 .div{ $color:yellow; } 2.类似函数@mixin border-radius($radius) { }引用:@include border-radius( ...

  3. 企业级mysql数据库完全备份、增量备份脚本

    企业完全备份脚本 [root@client ~]# vim /opt/mysql_bak_wanbei.sh #!/bin/bash #MySQL数据库完全备份脚本 #设置登录变量 MY_USER=& ...

  4. uva-679 Dropping Balls UVA - 679

    题目大意 总共有一个深度为D的满二叉树,I个小球,每个节点具有开关,小球经过节点后节点开关会有变化,初始都关闭,若关闭往左右否则往右走 只需要循环一下每层的情况即可 代码 #include <b ...

  5. input chrome下输入之后背景变为黄色的解决办法

    之所以Input输入之后背景原因色变为可恶的黄色,是因为在chrome 下input加上了input:-webkit-autofill这个属性,里面写的就是这个问题出现的原因 代码就是:input:- ...

  6. 48.cartinality的基本用法

    主要知识点 cartinality的用法     es去重用的是cartinality metric算法,对每个bucket中的指定的field进行去重,然后获取去重后的count,类似于count( ...

  7. 5.terms搜索多个值以及多值搜索结果优化

    主要知识点 terms搜索多个值,并和term的比较     一.term和terms terms是在这个字段中搜索多个值,相当于sql中的in语法 (select * from tbl where ...

  8. Problem 34

    Problem 34 https://projecteuler.net/problem=34 145 is a curious number, as 1! + 4! + 5! = 1 + 24 + 1 ...

  9. 车展(vijos P1459)

    描述 遥控车是在是太漂亮了,韵韵的好朋友都想来参观,所以游乐园决定举办m次车展.车库里共有n辆车,从左到右依次编号为1,2,…,n,每辆车都有一个展台.刚开始每个展台都有一个唯一的高度h[i].主管已 ...

  10. hdu 4280

    题意:求XY平面上最左边的点到最右边的点的最大流. 分析:数据量大,EK算法TLE,要用SAP算法.SAP算法用的是 http://www.cnblogs.com/kuangbin/archive/2 ...