zoukankan      html  css  js  c++  java
  • arcgis部分功能

    在安装完AE和VS后,启动VS,新建项目,在控件工具栏看到列出的AE控件,主要会使用的是MapControl(数据视图)、PageLayoutControl(布局视图),TOOCControl(需设置与MapControl、PageLayoutControl和SceneControl的伙伴关系(buddy)),ToolbarControl(通过右键属性->Iems添加命令按钮)以及LisenceControl(每个窗体都必须加载,可以控制功能权限)。

    也可以自己添加控件,需要添加引用及命名空间Controls,SystemUI

    (1)实现打开地图,添加一button控件

    //实现加载地图文档

    OpenFileDialog openFileDialog=new OpenFileDialog();

    openFileDialog.Title = "打开地图文档";

     openFileDialog.Filter = "map document(*.mxd)|*.mxd";
     openFileDialog.ShowDialog();
      string filepath = openFileDialog.FileName;
      if (axMapControl1.CheckMxFile(filepath))
       {
           axMapControl1.MousePointer = ESRI.ArcGIS.Controls.esriControlsMousePointer.esriPointerHourglass;
            axMapControl1.LoadMxFile(filepath, 0, Type.Missing);
             axMapControl1.MousePointer = ESRI.ArcGIS.Controls.esriControlsMousePointer.esriPointerDefault;
         }
         else
         {
               MessageBox.Show(filepath + "不是有效地地图文档");
          }

    (2)实现漫游

    ICommand pCommand = new ControlsMapPanToolClass();
    pCommand.OnCreate(axMapControl1.Object);
     axMapControl1.CurrentTool = pCommand as ITool;

    (3)全局视图

    ICommand pCommand = new ControlsMapFullExtentCommandClass();
     pCommand.OnCreate(axMapControl1.Object);
      pCommand.OnClick();

    (4)放大

    ICommand pCommand = new ControlsMapZoomInToolClass();
    pCommand.OnCreate(axMapControl1.Object);
    axMapControl1.CurrentTool = pCommand as ITool;

    (5)缩小

    ICommand pCommand = new ControlsMapZoomOutToolClass();
     pCommand.OnCreate(axMapControl1.Object);
     axMapControl1.CurrentTool = pCommand as ITool;

    (6)属性查询

    ICommand pCommand = new ControlsMapIdentifyToolClass();
    pCommand.OnCreate(axMapControl1.Object);
    axMapControl1.CurrentTool = pCommand as ITool;

  • 相关阅读:
    从TCP三次握手说起——浅析TCP协议中的疑难杂症
    动态绑定是如何实现的?
    C++对象的内存模型
    C/C++关键字
    libevent库介绍--事件和数据缓冲
    libevent编程疑难解答
    大型工程多个目录下的Makefile写法
    C++中的RAII机制
    C++中的智能指针
    二叉树的非递归遍历
  • 原文地址:https://www.cnblogs.com/janeaiai/p/4970839.html
Copyright © 2011-2022 走看看