《ArcEngine实现空间拓扑空间关联空间距离运算》由会员分享,可在线阅读,更多相关《ArcEngine实现空间拓扑空间关联空间距离运算(22页珍藏版)》请在金锄头文库上搜索。
1、【051】 ArcEngine 实现空间分析实现空间分析1.熟悉 ITopologicalOperator 接口(用于空间拓扑运算)的使用 2.熟悉 IRelationalOperator 接口(用于空间关联运算)的使用 3.熟悉 IProximityOperator 接口(用于空间距离运算)的使用 目录:目录:A1 ITopologicalOperator5 接口接口公共方法公共方法:Buffer 方法方法:Boundary 方法方法:Clip 方法方法:ConvexHull 方法方法:Cut 方法方法:Union 方法方法:Intersect 方法方法:Difference 方法方法:A2
2、 IRelationalOperator 接口接口公共方法公共方法:Contains 方法方法:Overlaps 方法方法:A3 IPoint 接口接口 A4 ICurve3 接口接口 A5 ISegment 接口接口 A6 ICircularArc 接口接口 - -写在前面:写在前面:使用空间分析的时候,会提示这样的错误“异常来自 HRESULT:0x80040215”,其 原因就是:在使用 ITopologicalOperator 求交集等操作的时候,有时会出现“ HRESULT:0x80040215”这个异常,原来是空间参考不一样所致。因此只要 SpatialReference 属性设为
3、同一空间参考就不会出现“ HRESULT:0x80040215”异常。所以在进行空间分析之前,要保证所建立的 shapefile 文件具有相同的 SpatialReference!- - 第第 A1 个个 ITopologicalOperator5 接口接口:1. Provides additional information on non-simple geometries.【拓扑操作】MembersDescriptionBoundary返回值:IGeometryThe boundary of this geometry. A polygons boundary is a polyline.
4、 A polylines boundary is a multipoint. A point or multipoints boundary is an empty point or multipoint.Buffer(double distance)返回值:IGeometry Constructs a polygon that is the locus of points at a distance less than or equal to a specified distance from this geometry.通过给定距离,得到操作图形的缓冲区,返回得到缓冲区几何图形!但是这里面
5、的距离很是蹊跷,同时实验发现,我写入 0.01 的时候,大约表示 1km,所以大约是 1:100 000 的关系!Clip(IEnvelope clipperEnvelope)Constructs the intersection of this geometry and the specified envelope.返回矩形部分的要素,直接作用在要素上面!ClipDenseConstructs the intersection of this geometry and the specified envelope; densifies lines in output contributed
6、by the clipping envelope.ClipExConstructs the intersection of this geometry and the specified envelope.ClipToDomainClips the geometry to the domain of the spatial reference. Useful for ensuring that buffers can be fit within the spatial domain of the feature class to which they are being added.Const
7、ructUnionDefines this geometry to be the union of the inputs. More efficient for unioning multiple geometries than calling Union repeatedly.ConvexHullConstructs the convex hull of this geometry.CutSplits this geometry into a part left of the cutting polyline, and a part right of it.Cut2Divides a geo
8、metry into multiple partsDifferenceConstructs the geometry containing points from this geometry but not the other geometry.GeoNormalizeExShifts longitudes, if need be, into a continuous range of 360 degrees.IntersectConstructs the geometry that is the set-theoretic intersection of the input geometri
9、es. Use different resultDimension values to generate results of different dimensions.IntersectMultidimensionConstructs the set-theoretic intersection of the inputs. The results are returned in a geometry bag with one element per result dimension.IsKnownSimpleIndicates whether this geometry is known
10、(or assumed) to be topologically correct.IsKnownSimpleIndicates whether this geometry is known (or assumed) to be topologically correct.IsSimpleIndicates whether this geometry is known (or assumed) to be topologically correct, after explicitly determining this if the geometry is not already known (o
11、r assumed) to be simple.IsSimpleExDetermines why a geometry is not simple. Currently only implemented for polygons.QueryClippedRedefines clippedGeometry to be the intersection of this geometry and the clipping envelope.QueryClippedDenseRedefines clippedGeometry to be the intersection of this geometr
12、y and the clipping envelope; densifies lines in the output contributed by the clipping envelope.SimplifyMakes this geometry topologically correct.SymmetricDifferenceConstructs the geometry that contains points from either but not both input geometries.UnionConstructs the geometry that is the set-the
13、oretic union of the input geometries.CoClasses that implement ITopologicalOperatorCoClasses and ClassesDescriptionGeoEllipse (esriDefenseSolutions)Its a spheroidal ellipse.GeometryBagAn ordered collection of objects that support the IGeometry interface.GeoPolygon (esriDefenseSolutions)Its a spheroid
14、al polygon.GeoPolyline (esriDefenseSolutions)This is a spheroidal polyline.MultiPatchA collection of surface patches.MultipointAn ordered collection of points; optionally has measure, height and ID attributes.PointA two dimensional point, optionally with measure, height, and ID attributes.PolygonA c
15、ollection of rings ordered by their containment relationship; optionally has measure, height and ID attributes.PolylineAn ordered collection of paths; optionally has measure, height and ID attributes. | 公共代码部分:公共代码部分:/公共变量!IMap pMap;IActiveView pActiveView;IEnvelope pEnv;ISelectionEnvironment pSelectionEnv;IEnumFeature pEnumFeature;IGraphicsContainer pGraphicsContainer;IFeature pFeature;IGeometry pGeometry;IEnvelope pEnvClip;IPolyline pLineC