IGeometryCollection Interface
Come from ArcGIS Online IGeometryCollection Interface
Provides access to members that can be used for accessing, adding and removing individual geometries of a multi-part geometry (Multipoint, Polyline, Polygon, MultiPatch, and GeometryBag).
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Description
A Collection of Geometry parts. For Multipoints, Triangles, TriangleFans, and TriangleStrips, the Geometry parts are Points. For Polylines, the Geometry parts are Paths. For Polygons, the Geometry parts are Rings. For MultiPatches, the Geometry parts are Triangles, TriangleFans, TriangleStrips, or Rings. For GeometryBags, the Geometry parts are any IGeometry object.
The GeometryCollection can be used to access, manipulate, add, insert, remove, and set specific parts of a composite geometry.
When To Use
If you are using a development language that does not support C style arrays, use IGeometryBridge instead. The IGeometryBridge interface solves that problem allowing you to pass safe arrays instead.
Members
Description |
||||
Adds references to the specified geometries. This method is intended for internal use only. |
||||
Adds a reference to the input geometry either at the end, or before, or after the specified index. |
||||
Adds references to geometries in the input collection. |
||||
Tells this geometry collection that some of its geometries have been altered. Use this method on polylines, polygons and multipatches after directly editing one of its parts. |
||||
A reference to the ith geometry. |
||||
The number of geometries in this collection. |
||||
Inserts at the specified index references to some number of geometries in the input array. This method is intended for internal use only. |
||||
Inserts at the specified index references to all if the geometries in the input collection. |
||||
Populates the array with references to a sub-sequence of geometries. This method is intended for internal use only. |
||||
Removes references to some geometries from this collection. |
||||
Replaces all geometries in the collection with the specified number of references to those in the input array. This method is intended for internal use only. |
||||
Replaces all geometries in the collection with references to geometries from the input collection. |
CoClasses that implement IGeometryCollection
CoClasses and Classes |
Description |
Its a spheroidal ellipse. |
|
An ordered collection of objects that support the IGeometry interface. |
|
Its a spheroidal polygon. |
|
This is a spheroidal polyline. |
|
A collection of surface patches. |
|
An ordered collection of points; optionally has measure, height and ID attributes. |
|
A collection of rings ordered by their containment relationship; optionally has measure, height and ID attributes. |
|
An ordered collection of paths; optionally has measure, height and ID attributes. |
|
A continuous 3D fan of triangles, where each triangle after the first shares an edge with the preceding triangle, and all triangles share a common pivot point. |
|
A collection of 3D triangles, where each consecutive triplet of vertices defines a new triangle |
|
A continuous 3D strip of triangles, where each triangle after the first shares an edge with the preceding triangle. |
Remarks
Every Geometry created within ArcGIS should be assigned a spatial reference. Always attach well-defined spatial references to new geometries. This improves processing efficiency, in particular, when using ITopologicalOperator on geometries that contain curved segments (circular arcs, bezier curves, elliptical arcs). New geometries include any geometry that is created in memory. It does not matter whether it will be stored in a feature class or not. Well-defined as applied to a spatial reference means that it not only has its coordinate system (projection) defined, but also its coordinate grid. The coordinate grid consists of the xy domain, xy resolution, and xy cluster tolerance properties of a spatial reference. If the Geometry includes z or m values, the z or m domains, z or m resolutions, and z or m cluster tolerance properties must also be defined. The cluster tolerance and resolutions can be quickly and easily set using SetDefault methods on ISpatialReferenceResolution and ISpatialReferenceTolerance interfaces.
//The example shows a GeometryCollection for MultiPoint.
public void ShowGeometries()
{ IGeometryCollection geometryCollection = new MultipointClass();
//add 10 points in a loop
object missing = Type.Missing; for (int i = ; i < ; i++)
{
IPoint point = new PointClass();
point.PutCoords(i * , i * );
geometryCollection.AddGeometry(point as IGeometry, ref missing, ref missing);
} int geometryCount = geometryCollection.GeometryCount;
System.Windows.Forms.MessageBox.Show("GeometryCount = " + geometryCount); for (int i = ; i < geometryCount; i++)
{
IGeometry currentGeometry = geometryCollection.get_Geometry(i);
IPoint point = currentGeometry as IPoint; //we know that there are IPoints only in the Geometrycollection.
//But this is the safe and recommended way
if (point != null)
{
System.Windows.Forms.MessageBox.Show("X = " + point.X + ", Y = " + point.Y);
} } }
IGeometryCollection Interface的更多相关文章
- angular2系列教程(七)Injectable、Promise、Interface、使用服务
今天我们要讲的ng2的service这个概念,和ng1一样,service通常用于发送http请求,但其实你可以在里面封装任何你想封装的方法,有时候控制器之间的通讯也是依靠service来完成的,让我 ...
- 接口--interface
“interface”(接口)关键字使抽象的概念更深入了一层.我们可将其想象为一个“纯”抽象类.它允许创建者规定一个类的基本形式:方法名.自变量列表以及返回类型,但不规定方法主体.接口也包含了基本数据 ...
- Configure a bridge interface over a VLAN tagged bonded interface
SOLUTION VERIFIED February 5 2014 KB340153 Environment Red Hat Enterprise Linux 6 (All Versions) Red ...
- Create a bridge using a tagged vlan (8021.q) interface
SOLUTION VERIFIED April 27 2013 KB26727 Environment Red Hat Enterprise Linux 5 Red Hat Enterprise Li ...
- Configure a bridged network interface for KVM using RHEL 5.4 or later?
environment Red Hat Enterprise Linux 5.4 or later Red Hat Enterprise Linux 6.0 or later KVM virtual ...
- Set up VLAN (802.1q) tagging on a network interface?
SOLUTION VERIFIED October 13 2015 KB39674 KB741413 environment Red Hat Enterprise Linux 4 Red Hat En ...
- 谨慎使用Marker Interface
之所以写这篇文章,源自于组内的一些技术讨论.实际上,Effective Java的Item 37已经详细地讨论了Marker Interface.但是从整个Item的角度来看,其对于Marker In ...
- 浅析Go语言的Interface机制
前几日一朋友在学GO,问了我一些interface机制的问题.试着解释发现自己也不是太清楚,所以今天下午特意查了资料和阅读GO的源码(基于go1.4),整理出了此文.如果有错误的地方还望指正. GO语 ...
- 如何设计一门语言(七)——闭包、lambda和interface
人们都很喜欢讨论闭包这个概念.其实这个概念对于写代码来讲一点用都没有,写代码只需要掌握好lambda表达式和class+interface的语义就行了.基本上只有在写编译器和虚拟机的时候才需要管什么是 ...
随机推荐
- 谈一谈Nginx的强大
什么是Nginx? Nginx是一款高性能,开源的,支持高并发而轻量级的Web服务器,同时也是具有反向代理服务器及电子邮件(IMAP/POP3)的代理服务器. 基于REST架构风格,并且以统一资源描述 ...
- Eclipse怎样把文件系统形式的项目作为工程直接导入?
导入的时候,选择已经存在的工程,如果选择文件系统,可能会提示没有项目可以导入.这个时候,可以从其它Eclipse项目下,copy一份.project文件过来,修改源文件中的工程名字.如果需要,也可以c ...
- 【JEECG技术博文】JEECG 简单实例解说权限控制
JEECG简单实例解说权限控制 请大家点击这里为我们投票.2015博客之星.很多其他分享敬请期待 博文地址:http://blog.itpub.net/30066956/viewspace-18687 ...
- hdoj 2122 Ice_cream’s world III【最小生成树】
Ice_cream's world III Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- php课程 13-43 mysql的数据结构是什么
php课程 13-43 mysql的数据结构是什么 一.总结 一句话总结:cs结构,客户端,服务器 1.常用的比较出名的数据库有哪些? SQL数据库(关系型):1.收费:DB2SqlserverOra ...
- 17.Node.js 回调函数--异步编程
转自:http://www.runoob.com/nodejs/nodejs-tutorial.html Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程 ...
- 在VS中设置比较和谐的字体和颜色的方法
作者:朱金灿 来源:http://blog.csdn.net/clever101 先在studiostyl.es网站选择你喜欢的字体方案,我个人比较喜欢这款: Humane Studio,注意在网页上 ...
- golang 函数作为类型
golang 函数作为类型 package main import "fmt" type A func(int, int) func (f A)Serve() { fmt.Prin ...
- NuGet 使用及dll管理
NuGet学习笔记(1)——初识NuGet及快速安装使用 作者: 懒惰的肥兔 来源: 博客园 发布时间: 2012-05-20 21:33 阅读: 53168 次 推荐: 33 原文链接 ...
- 洛谷—— P1080 国王游戏
https://www.luogu.org/problem/show?pid=1080 题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整 ...