ArcGIS中的几何对象—— Polyline

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

Polyline 对象是由一个或多个相连或者不相连的path对象的有序集合,通常用来代表线状地物如道路,河流,管线等。

Polyline 是有序 Path 组成的集合,可以拥有M、Z和ID属性值。


在这个模型中,我们看到某些几何对象可以组合产生新的几何形体,如 Polyline 由 Path 构成,Path 又可以由 Segement 组成,但是这并不意味着用户必须按照这种层次去构造Polyline,实际上 Point 集合直接构成 Polyline,组成 Polyline 的这些路径既可以是连续的,也可以是不连续的.


一个 Polyline 对象必须满足以下准则:
1. 组成 Polyline 对象的所有 Path 对象必须是有效的。
2. 组成 Polyline 对象的所有 Path 对象不能重合,相交或自相交。
3. 组成 Polyline 对象的多个 Path 对象可以连接与某一点,也可以分离。
4. Path 对象的长度不能为0。


Polyline 对象的重要接口:

IPolyline
Polyline 类的主要接口, IPolyline 的 Reshape 方法可以使用一个 Path 对象为一个 Polyline 对象整形,IPolyline 的 SimplifyNetwork 方法用于简化网络。

IPointCollection
该接口包含了所有的节点信息。

IGeometryCollection
该接口可以获取 Polyline 的Paths。
Polyline 对象可以使用 IGeometryCollection 接口添加 Path 对象的方法来创建。

ISegmentCollection
该接口可以获取 Polyline 的 Segments。


下面代码片段演示了一个Polyline的构成:

private object pMissing = Type.Missing;

public IGeometry GetPolylineGeometry()
{
	const double PathCount = 3;
	const double PathVertexCount = 3;
	IGeometryCollection pGeometryCollection = new PolylineClass();
	for (int i = 0; i < PathCount; i++)
	{
		IPointCollection pPointCollection = new PathClass();
		for (int j = 0; j < PathVertexCount; j++)
		{
			pPointCollection.AddPoint(GetPoint(), ref pMissing, ref pMissing);
		}
		pGeometryCollection.AddGeometry(pPointCollection as IGeometry, ref pMissing, ref pMissing);
	}
	return pGeometryCollection as IGeometry;
}

private IPoint GetPoint()
{
	const double Min = -10;
	const double Max = 10;
	Random random = new Random();
	double x = Min + (Max - Min) * random.NextDouble();
	double y = Min + (Max - Min) * random.NextDouble();
	return ConstructPoint(x, y);
}


arcgis Android之在地图上创建多线polyline的两种方法 虽说标题是创建多线polyline,但是具体的代码自己可以变通,创建点、多点什么的都是ok的 两种方法,一种是逐个点选取,然后连接成一条多线; 另一种是直接画一条多线,具体区别后面说。 不管哪一种方法,前几步是一样的: 首先,添加MapView,在xml布局文件里添加 <com.esri.android.map.MapView android:layout_wid 阅读详情

相关推荐

Arcgis之Python的Arcpy的点线面对象的创建处理和通过pandas读取txt中的经纬度坐标创建几何对象

Point、PointGeometry、Multipoint、Polyline、Polygon

爱吃雪糕的小布丁的博客 1822

ArcGIS中多段线(MultiPart Polyline)的坐标提取及重绘

前段时间在项目中需要将Shp文件中的多线段(Polyline)的坐标提取出来,存成坐标序列文件如XML,方便前端应用中展示。 于是直接将Polyline强转为IPointCollection接口,进而获取点坐标序列,写成XML文件。思路清晰,实现也很简单。 经过一段时间应用,发现一个问题,获取出的坐标序列重绘时会出现乱的连线。 原来ArcGIS中多段线(Polyline)有一部分是结

小小的天空 1万+

ArcGis Polyline的一些操作

ArcGis 绘制折线的一些操作(获取折线顶点,添加path,设置样式等) html代码 // An highlighted block <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" c...

xibudefangniuwa的博客 1945

arcgis 分图层

var todayCaseLayer = new esri.layers.GraphicsLayer({ id: "todayCaseLayer" }); map.addLayer(todayCaseLayer); // 今日案件 $(".todayCase").click(function (event) { $(thi...

u013365404的专栏 1241

ArcGIS添加图层到指定的索引思路:

ArcgiS添加图层:  pMapControlDefault.AddLayer(pAddLayer, intIndexLastPoint + 1); 或者是先添加后移动:MoveLayer

1474

ArcObjects中的几何对象简介(一)

几何对象是ArcObjects中使用最广泛的对象之一,用户在新建、删除、编辑何进行地理分析的时候,就是在处理一个包含几何形体的矢量对象几何对象用于表达要素(Feature)或图形元素(Graphic Element)的几何形状。ArcGIS中的几何对象可以分为两个层次: 高级几何对象。高级几何对象用于定义要素的几何形状。主要包括 Point Multipoint P...

weixin_30602505的博客 371

geomtry string 转换_(转) Arcgis for js之WKT和GEOMETRY的相互转换

http://blog.csdn.net/gisshixisheng/article/details/440574531、wkt简介WKT(Well-known text)是一种文本标记语言,用于表示矢量几何对象、空间参照系统及空间参照系统之间的转换。它的二进制表示方式,亦即WKB(well-known-binary)则胜于在传输和在数据库中存储相同的信息。该格式由开放地理空间联盟(OGC)制定。...

weixin_29268385的博客 1084

ArcGIS Geometry对象介绍

Geometry是一种基本类。它是一种抽象类。是ArcGIS Engine中使用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素以外,控件对象选择,要素符号化,标注要素,编辑要素都需要Geometry参与。 在Geometry模型中的几何对象分为两种类型,一类是用来直接构建要素类的称为高级...

漓涂 4476

(转) Arcgis for js之WKT和GEOMETRY的相互转换

http://blog.csdn.net/gisshixisheng/article/details/44057453 1、wkt简介 WKT(Well-known text)是一种文本标记语言,用于表示矢量几何对象、空间参照系统及空间参照系统之间的转换。它的二进制表示方式,亦即WKB(well-known-binary)则胜于在传输和在数据库中存储相同的信息。该格式由开放地理空间联...

524

geomtry string 转换_Arcgis for js之WKT和GEOMETRY的相互转换

1、wkt简介WKT(Well-known text)是一种文本标记语言,用于表示矢量几何对象、空间参照系统及空间参照系统之间的转换。它的二进制表示方式,亦即WKB(well-known-binary)则胜于在传输和在数据库中存储相同的信息。该格式由开放地理空间联盟(OGC)制定。WKT可以表示的几何对象包括:点,线,多边形,TIN(不规则三角网)及多面体。以下为几何WKT字串样例:POINT(6...

weixin_36263001的博客 747

point\polyline\polygon的转化(转)

首先你要明白Polyline是由path对象构成,Polygon是由ring对象构成,因此实现polyline向polygon的转换,思路如下:1.提取polyline中的所有path对象2.将path对象转换成ring对象,由于IRing继承自IPath,因此该转换是合理的3.利用IGeometryCollection.AddGeometry添加ring对象,构成polygon示例如下...

bandu2576的博客 1495

Arcgis Geometry对象详细介绍

Geometry是ArcGIS Engine中使用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素以外,控件对象选择,要素符号化,标注要素,编辑要素都需要Geometry参与。图1是Geometry的主要几何对象模型图,接下来将一一介绍这些几何对象几何对象1、Point:是一个0维的几何图形,具有X,Y坐标值,以及一些可选的属性:...

Prince的博客 3929

C# Arcgis 中 Point Polyline Polygon 等的操作

//如何构建Point private IPoint ConstructPoint(double x, double y) { IPoint pPoint = new ESRI.ArcGIS.Geometry.Point(); pPoint.PutCoords(x,y); return pPo...

Prince的博客 3061

ArcEngine 9.3 学习笔记(一):几何对象与空间参考(Point、MultiPoint、Path、Ring、PolylinePolygon的创建)...

  断断续续地把《ArcObjects GIS应用开发-基于C#》看完了,几百页,还是晚上看的,也就有个概念,这几天找了本 《TM_A_090420_ArcGIS Engines9.3 基础开发教程》,感觉内容偏向实战,在看的过程中为了集中注意力,一边看,一边敲,等看完了,发现抄了几千行的内容。于是乎想放上来留个纪念;这本书应该是某个ESIR的员工很早前写的,也能在网上搜到不少转载的文章...

技术架构公社 1834

ArcGIS Engine开发之旅09--几何对象和空间参考

原文:ArcGIS Engine开发之旅09--几何对象和空间参考 1.Geometry Geometry 是 GIS 中使用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素意外,控件对象选择,要素符号化,标注要素,编辑要素都需要 Geometry 参与。在 ArcGIS Engine 中...

weixin_33965305的博客 109

Arcgis Geometry 详解

Geometry是ArcGIS Engine中使用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素意外,控件对象选择,要素符号化,标注要素,编辑要素都需要Geometry参与。图1是Geometry的主要几何对象模型图,接下来将一一介绍这些几何对象几何对象Point:是一个0维的几何图形,具有X,Y坐标值,以及一些可选的属性:如高...

Prince的博客 1万+

arcengine之Geometry对象模型

Geometry是ArcGIS Engine中使用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素意外,控件对象选择,要素符号化,标注要素,编辑要素都需要Geometry参与。图1是Geometry的主要几何对象模型图,接下来将一一介绍这些几何对象几何对象 Point:是一个0维的几何图形,具有X

u012213467的专栏 4838
上一篇: ArcGIS中的几何对象——线
下一篇: ArcGIS中的几何对象—— Polygon
lab2013
博客等级 码龄15年 54粉丝 46原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值