77范文网 - 专业文章范例文档资料分享平台

ArcEngine - 开发接口集(4)

来源:网络收集 时间:2020-02-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

13. pEnv1.CenterAt pPoint 14.

15. Dim dXmin As Double, dYmin As Double, dXmax As Double, dYmax As Double 16. pEnv1.QueryCoords dXmin, dYmin, dXmax, dYmax 17.

18. If pEnv1.IsEmpty Then 19. MsgBox \20. Else

21. MsgBox dXmin & \ dYmax 22. End If 23. End Sub

IEnvelope接口的长宽属性Height和Width属性(读写,可以通过该属性获取或设置该边框的长和宽)

IEnvelope接口的4个顶点属性UpperLeft、UpperRight、LowerLeft和LowerRight(读写,返回IPoint类型的四个顶点,比直接获得最值坐标更加方便严谨) 例子代码:

1. Private Sub Form_Load()

2. Set m_pEnveLope = New Envelope 3. Set m_pCPoint = New Point 4. m_pEnveLope.XMin = 0 5. m_pEnveLope.YMin = 0 6. m_pEnveLope.XMax = 0 7. m_pEnveLope.YMax = 0 8. m_pCPoint.X = 0 9. m_pCPoint.Y = 0

10. Set m_pLowerLeft = New Point 11. Set m_pLowerRight = New Point 12. Set m_pUpperLeft = New Point 13. Set m_pUpperRight = New Point 14. update_props 15. End Sub

16.

17. Private Sub update_props()

18. Set m_pLowerLeft = m_pEnveLope.LowerLeft 19. edtLlx.Text = m_pLowerLeft.X 20. edtLly.Text = m_pLowerLeft.Y

21. Set m_pLowerRight = m_pEnveLope.LowerRight 22. edtLrx.Text = m_pLowerRight.X 23. edtLry.Text = m_pLowerRight.Y

24. Set m_pUpperLeft = m_pEnveLope.UpperLeft 25. edtUlx.Text = m_pUpperLeft.X 26. edtUly.Text = m_pUpperLeft.Y

27. Set m_pUpperRight = m_pEnveLope.UpperRight 28. edtUrx.Text = m_pUpperRight.X 29. edtUry.Text = m_pUpperRight.Y 30. End Sub

IEnvelope接口的最值坐标属性XMax、XMin、YMax和YMin(读写,可以通过该属性获取或设置该边框的四个顶点的坐标)

IEnvelope接口的第五个方法Union (inEnvelope ) (方法,将参数输入的几何边框和调用该方法的几何边框求并集,并将结果赋值给第一个边框,即调用此方法的object) 例子代码:

1. Public Sub t_EnvUnion() 2. Dim pEnv1 As IEnvelope 3. Dim pEnv2 As IEnvelope 4.

5. Set pEnv1 = New Envelope 6. Set pEnv2 = New Envelope 7.

8. pEnv1.PutCoords 100, 100, 200, 200 9. pEnv2.PutCoords 150, 150, 250, 250 10.

11. pEnv1.Union pEnv2

12.

13. Dim dXmin As Double, dYmin As Double, dXmax As Double, dYmax As Double 14. pEnv1.QueryCoords dXmin, dYmin, dXmax, dYmax 15. End Sub

IEnvelope接口的第六个方法Union (inEnvelope ) (方法,返回与输入参数相交的区域的几何边框,并将结果赋值给第一个边框,即调用此方法的object) 例子代码:

1. ' The example shows how to intersect 2 envelopes. The result is put in 2. ' the first envelope. 3. Public Sub t_EnvIntersect() 4. Dim pEnv1 As IEnvelope 5. Dim pEnv2 As IEnvelope 6.

7. Set pEnv1 = New Envelope 8. Set pEnv2 = New Envelope 9.

10. pEnv1.PutCoords 100, 100, 200, 200 11. pEnv2.PutCoords 150, 150, 250, 250 12.

13. pEnv1.Intersect pEnv2 14.

15. Dim dXmin As Double, dYmin As Double, dXmax As Double, dYmax As Double 16. pEnv1.QueryCoords dXmin, dYmin, dXmax, dYmax 17.

18. If pEnv1.IsEmpty Then

19. MsgBox \20. Else

21. MsgBox dXmin & \22. End If 23. End Sub

IEnvelope接口的第七个方法PutCoords (XMin, YMin,XMax,YMax) (方法,将新建的一个边框的4个极坐标设置为输入的参数) 例子代码:

1. Public Function CreateEnvXY(dblXMin As Double, dblYMin As Double, _ 2. dblXMax As Double, dblYMax As

Double) As IEnvelope

3. Set CreateEnvXY = New esriGeometry.Envelope

4. CreateEnvXY.PutCoords dblXMin, dblYMin, dblXMax, dblYMax 5. End Function

IEnvelope接口的第八个方法QueryCoords (XMin, YMin,XMax,YMax)(方法,将已有的一个边框的4个极坐标输出到参数当中以备后用)

IEnvelope接口的第九个方法Expand (dx, dy, asRatio) (方法,按照输入的dx与dy参数来放大或者缩小当前的边框,用与对ArcMap窗体的中心放大或缩小,或者点击屏幕获得点击点的坐标,并将中心点设置成点击点,并进行一定比例的放大或者缩小) 例子代码:

1. Public Sub t_EnvExpand() 2. Dim pEnv1 As IEnvelope 3. Set pEnv1 = New Envelope

4. pEnv1.PutCoords 100, 100, 200, 200 5.

6. pEnv1.Expand 0.5, 0.5, True 7.

8. Dim dXmin As Double, dYmin As Double, dXmax As Double, dYmax As Double 9. pEnv1.QueryCoords dXmin, dYmin, dXmax, dYmax 10.

11. If pEnv1.IsEmpty Then

12. MsgBox \13. Else

14. MsgBox dXmin & \15. End If 16. End Sub

注意!!!一般情况设置为True,来控制倍数的放大

1. Expand scales the size of the Envelope. If asRatio = FALSE, the expansion

is additive. 2. XMin = XMin - dx 3. YMin = YMin - dy 4. XMax = XMax + dx 5. YMax = YMax + dy

6. If asRatio = TRUE, the expansion is multiplicative. 7. XMin = (XMin - dx*Width)/2 8. YMin = (YMin - dy*Height)/2 9. XMax = (XMax + dx*Width)/2 10. YMax = (YMax + dy*Height)/2

11. The Envelope remains centered at the same position.

IEnvelope接口的第十个方法Offset (X, Y) (方法,将已有的一个边框的按照输入参数的大小来进行水平竖直的移动) 例子代码:

1. Private Sub btnOffset_Click() 2. m_pEnveLope.Offset 10, 20 3. update_props 4. End Sub 5. 注意!!!

6. The new position of the Envelope is as follows: 7. new XMin= old XMin + X 8. new YMin = old YMin + Y 9. new XMax = old XMax + X 10. new YMax = old YMax + Y

11. 关于IFeature接口(esriGeoDatabase) IFeature接口的第一个属性Class(只读)

IFeature接口的第二个方法Delete(方法,删除该行。因为一个Feature在表格中对应的

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库ArcEngine - 开发接口集(4)在线全文阅读。

ArcEngine - 开发接口集(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/772901.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: