ArcGIS接口详细说明(2)

2019-08-31 17:37

pPoint.PutCoords 0,0

Set pNPoint =NewPoint pNPoint.PutCoords 2,2 dRadius = 1.4142135623731

pNPoint.ConstrainDistance dRadius,pPoint

MsgBox \ \ x,y = \ \ pNPoint.Y EndSub

5. 关于IPointArray接口(esriGeometry)

IPointArray接口的第一个方法Add(p) (方法,向该类型的数组变量添加Point)

IPointArray接口的第二个属性Count (只读,获得该数组变量中Point的个数,返回Long类型变量) IPointArray接口的第三个属性Element(Index)(只读,获得该数组变量中位于参数Index索引位置的点Point,返回一个Point类型的变量)

IPointArray接口的第四个方法Insert (Index, p ) (方法,向索引位置Index插入一个点Point) IPointArray接口的第五个方法Remove (Index ) (方法,移除索引位置Index的点Point) IPointArray接口的第六个方法RemoveAll (方法,移除所有在此数组中的点)

6. 关于IPointCollection接口(esriGeometry)

IPointCollection接口的第一个方法AddPoint(inPoint [,before] [,after]) (方法,向该类型的点集变量添加Point,第一个参数为添加的Point,第二个第三个参数为可选择的参数,默认添加进点集的末尾)

IPointCollection接口的第二个属性Point(i) (只读,获得该点集变量中第i个位置的Point,返回IPoint类型变量,i从0计算开始)

IPointCollection接口的第三个属性PointCount (只读,获得该点集变量中点的个数,返回Long类型变量,切记,如果一个PointCollection变量是由闭合的Geometry转换而来的话,那么点的个数比节点数多一个,因为是闭合的,所以首位节点是同一个点)

7. 关于IPolyline接口(esriGeometry)

IPolyline接口的第一个属性FromPoint与ToPoint(读写,设置或者读取该点的起始点和终止点,返回都是IPoint类型的变量)

IPolyline接口的第二个方法QueryFromPoint (from )(方法,返回IPoint类型的变量到参数from) IPolyline接口的第三个方法QueryToPoint (to ) (方法,返回IPoint类型的变量到参数to)

Public Sub t_ICurve_QueryPoints() Dim pIDAsNewUID pID = \ Dim pEditorAsIEditor

Dim pAppAsIApplication Set pApp =MxApplication

Set pEditor =pApp.FindExtensionByCLSID(pID)

If pEditor.SelectionCount<> 1 Then MsgBox\ ExitSub End If

Dim pEnumFeatAsIEnumFeature Dim pFeatureAsIFeature

Set pEnumFeat =pEditor.EditSelection

Dim pCurveAsICurve Dim pPointFromAsIPoint Dim pPointToAsIPoint

Set pPointFrom =NewPoint Set pPointTo =NewPoint

Set pFeature =pEnumFeat.Next

While NotpFeatureIsNothing

IfpFeature.Shape.GeometryType= esriGeometryPolyline Or_ esriGeometryPolyline OresriGeometryLineThen SetpCurve =pFeature.Shape pCurve.QueryFromPoint pPointFrom pCurve.QueryToPoint pPointTo

MsgBox\ vbCrLf _

& \ \ pPointFrom.Y &vbCrLf_ & \ \ pPointTo.Y &vbCrLf EndIf

SetpFeature =pEnumFeat.Next Wend

End Sub

IPolyline接口的第四个方法Generalize (maxAllowableOffset ) (方法,用道格拉斯普克发来简化polyline) IPolyline接口的第五个方法Weed (maxAllowableOffsetFactor ) (方法,和方法Generalize类似,均为简化polyline的方法,不同的是参数。)

8. 关于IGeometry接口(esriGeometry)

Public Sub t_IGeometry_polygon() Dim pIDAsNewUID pID = \ Dim pEditorAsIEditor Dim pAppAsIApplication Set pApp =Application

Set pEditor =pApp.FindExtensionByCLSID(pID)

If pEditor.SelectionCount<> 1Then MsgBox\ ExitSub End If

Dim pEnumFeatAsIEnumFeature Dim pFeatureAsIFeature

Set pEnumFeat =pEditor.EditSelection Dim pGeometryAsIGeometry Set pFeature =pEnumFeat.Next While NotpFeatureIsNothing

IfpFeature.Shape.GeometryType= esriGeometryPolygon Then

(通过pFeature.Shape获得Geometry) SetpGeometry =pFeature.Shape

MsgBox\ properties...\ & \ vbCrLf _ & \ type =\ vbCrLf _

& \ \ \ pGeometry.Envelope.YMin& \ _ & pGeometry.Envelope.XMax &\ pGeometry.Envelope.YMin & vbCrLf_ & \ \ vbCrLf _ & \ EndIf

SetpFeature =pEnumFeat.Next Wend

EndSub

IGeometry接口的第一个属性Dimension(只读,返回一个类型为esriGeometryDimension的该图形的几何维度) -1 esriGeometryNoDimension 1 esriGeometry0Dimension 2 esriGeometry1Dimension 4 esriGeometry2Dimension 5 esriGeometry25Dimension 6 esriGeometry3Dimension

IGeometry接口的第二个属性Extent(只读,返回一个类型为IEnvelope的该图形的几何范围的最大边框) IGeometry接口的第三个属性GeometryType(只读,返回一个类型为esriGeometryType的该图形的几何类型) esriGeometryNull = 0 esriGeometryPoint = 1 esriGeometryMultipoint = 2 esriGeometryPolyline = 3 esriGeometryPolygon = 4 esriGeometryEnvelope = 5 esriGeometryPath = 6 esriGeometryAny = 7 esriGeometryMultiPatch = 9 esriGeometryRing = 11 esriGeometryLine = 13 esriGeometryCircularArc = 14 esriGeometryBezier3Curve = 15 esriGeometryEllipticArc = 16 esriGeometryBag = 17 esriGeometryTriangleStrip= 18 esriGeometryTriangleFan = 19 esriGeometryRay = 20 esriGeometrySphere = 21

9. 关于IArea接口(esriGeometry)

Public Sub t_IArea_polygon() Dim pIDAsNewUID pID = \ Dim pEditorAsIEditor

Dim pAppAsIApplication Set pApp =Application

Set pEditor =pApp.FindExtensionByCLSID(pID) If pEditor.SelectionCount<> 1Then MsgBox\ ExitSub End If

Dim pEnumFeatAsIEnumFeature Dim pFeatureAsIFeature Dim iAsLong

Set pEnumFeat =pEditor.EditSelection

Dim pAreaAsIArea Dim pCenterAsIPoint Dim pLabelAsIPoint Set pCenter =NewPoint Set pLabel =NewPoint

Set pFeature =pEnumFeat.Next

While NotpFeatureIsNothing

IfpFeature.Shape.GeometryType= esriGeometryPolygon Then SetpArea =pFeature.Shape

MsgBox\ properties...\ & \ \ vbCrLf _ & \ \ vbCrLf _ & \ \ vbCrLf _ & pArea.LabelPoint.X &vbCrLf_ & \

pArea.QueryCentroid pCenter pArea.QueryLabelPoint pLabel

MsgBox\ Queries...\ & \ \ \ pCenter.Y &vbCrLf_ & \ \ \ pLabel.Y &vbCrLf


ArcGIS接口详细说明(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016民事诉讼法简答题汇总

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: