本文主要详细讲解ArcGIS中的线、多线段和多边形的结构关系。

embedded/2025/2/10 9:20:56/

       在ArcGIS的定义中,线部分的类结构视图如下:

       从上图可以非常直观地看到其结构关系。

一、线段(ISegment)
       ArcGIS中的线段都继承于ISegment,分四种线段。贝拉曲线(IBezierCurve)、直线段(ILine)、圆弧线(ICircularArc)、椭圆弧线(IEllipticArc)。他们只有两个端点相连接。


1. 直线段(ILine)

       直线段由两个点直接连接而成。

2. 圆弧线(ICircularArc)

       圆弧线是一个弧段,也可以是一个完整的圆弧,即起点和终点在同一个点上。

3. 椭圆弧线(IEllipticArc)

       椭圆弧线是椭圆的一个弧段,可以是一个完整的椭圆,也可以是任何一段弧段。


4. 贝塞尔曲线(IBezierCurve)

       贝赛尔曲线的每一个顶点都有两个控制点,用于控制在该顶点两侧的曲线的弧度。它是应用于二维图形应用程序的数学曲线。曲线的定义有四个点:起始点、终止点(也称锚点)以及两个相互分离的中间点。滑动两个中间点,贝塞尔曲线的形状会发生变化。在实际开发和应用中不常用到该类曲线段。

       更多关于贝塞尔曲线,参见:http://baike.baidu.com/view/60154.htm


二、相互连接组成的线(IPath),闭合的连接线(IRing)
       一个或多条线段首尾相连接,组成的图形IPath。满足IPath必须要满足线段是首尾相接,每个连接处只能有两个点。IPath可由一条或多条线段构成,构成的图形可以成闭合状态,这时闭合的IPath可称为IRing(类比于正方形是长宽相等的矩形)。

       下图所示,左边的能构成IPath,右边的则不能称作IPath。

三、多线段(IPolyline)
       多线段由一条或多条IPath构成。可以想到,单个ISegment也可构成一个IPolyline。闭合的IPaths(IRing)同样可以构成一个IPolyline,当然闭合的一个ISegment同样是可以构成IPolyline。一个IPolyline可能是连接的也可能是分散的,但通常情况下一个多线段由一个IPath构成,这样有利于数据的读取和分析。

四、多边形(IPolygon)
       多边形是由一个或多个IRing构成。也就是说,组成IPolygon中的图形都是闭合的图形。单个闭合ISegment可以构成IPolygon,如闭合的圆弧(ICurve)、闭合的椭圆弧(IEllipticArc)。Polygon可以是相互包含、相交或者分散的多个IRing构成,但通常情况下一个IPolygon由一个IRing构成,便于数据读取和各种分析。

五、曲线ICurve
       ArcGIS中,所有的线相关的图形都继承ICurve,其定义了线的通性和一些操作查询方法。

下表是ICurve的成员变量和方法:

具体用法见ArcGIS开发帮助文档。

来源:http://blog.csdn.net/mengdong_zy/article/details/9057095


http://www.ppmy.cn/embedded/161050.html

相关文章

DeepSeek时代:百度们亟需“深度求索”

文:互联网江湖 作者:刘致呈 眼看着梁文峰被捧上中国AI神坛,科技巨头们的心情一定是复杂的。 就像大刘笔下的《三体》中,当三百年后的人类太空舰队,面对水滴探测器时是五味杂陈的。 当科技大佬们纷纷断言,…

前端框架中 HTML 的应用技巧:React、Vue、Angular 深度解析

系列文章目录 01-从零开始学 HTML:构建网页的基本框架与技巧 02-HTML常见文本标签解析:从基础到进阶的全面指南 03-HTML从入门到精通:链接与图像标签全解析 04-HTML 列表标签全解析:无序与有序列表的深度应用 05-HTML表格标签全面…

Mac本地部署DeekSeek-R1下载太慢怎么办?

Ubuntu 24 本地安装DeekSeek-R1 在命令行先安装ollama curl -fsSL https://ollama.com/install.sh | sh 下载太慢,使用讯雷,mac版下载链接 https://ollama.com/download/Ollama-darwin.zip 进入网站 deepseek-r1:8b,看内存大小4G就8B模型 …

使用Python实现PDF与SVG相互转换

目录 使用工具 使用Python将SVG转换为PDF 使用Python将SVG添加到现有PDF中 使用Python将PDF转换为SVG 使用Python将PDF的特定页面转换为SVG SVG(可缩放矢量图形)和PDF(便携式文档格式)是两种常见且广泛使用的文件格式。SVG是…

Mac电脑修改hosts文件内容

背景 mac电脑需要配置ip和域名的映射关系,通过域名访问内部系统 解决 打开终端 输入 sudo su 命令,切换到root用户 输入密码 编辑hosts文件,输入命令 vim /etc/hosts 编辑hosts内容,英文状态下,按键盘字母 i 键&am…

图解BWT(Burrows-Wheeler Transform) 算法

Burrows-Wheeler Transform (BWT) 是一种数据转换算法, 主要用于数据压缩领域. 它由 Michael Burrows 和 David Wheeler 在 1994 年提出, 广泛应用于无损数据压缩算法(如 bzip2)中. BWT 的核心思想是通过重新排列输入数据, 使得相同的字符更容易聚集在一起, 从而提高后续压缩算…

大模型应用与实战:专栏概要与内容目录

文章目录 大模型应用与实战📚 核心内容模块一、大模型推理与部署1.1 推理框架应用实践1.2 框架源码深度解析1.3 高并发部署优化1.4 国产化平台适配 二、Agent框架专题2.1 Langchain系列2.2 Qwen-Agent系列2.3 Dify应用实践2.4 框架对比与迁移 三、微调技术研究3.1 微…

DeepSeek vs. ChatGPT:不同的诞生时间,对人工智能发展的不同影响

DeepSeek vs. ChatGPT:不同的诞生时间,对人工智能发展的不同影响 ChatGPT 和 DeepSeek 诞生于不同的时间节点,代表了人工智能不同阶段的发展方向。它们在技术、应用以及对AI发展趋势的影响方面各有侧重。 1. 诞生时间与背景 ChatGPT&#x…