开发语言:C#

平台版本:MapGIS K9 SP3

MapGIS K9三维平台也提供了接口和组件以实现二次开发。用户可以根据提供的接口和组件进行二次开发,也可以借助MapGISK9数据中心框架,可以方便的调用三维平台已有的基本功能。本文就是个简单的数据浏览和功能调用示例。

我们要用到两个控件,一个是三维场景控件:MapGIS mx_TDEViewCtrlControl ,另外一个就是三维目录树控件:MapGIS mx_TDETreeCtrlControl。我们新建一个窗体,并将两个控件添加到窗体中。

控件准备好了,现在需要准备数据了。数据需要在三维平台里面操作完成,配置好显示的模型,并保存目录树。(具体配置过程可参考大赛提供的三维平台操作视频)

数据配置完成之后,在窗体的构造函数中添加两行代码:

public Form1()

{

InitializeComponent();

axmx_TDEViewCtrl1.initEnvionment();//初始化三维场景控件

axmx_TDETreeCtrl1.initEnvionment();//初始化三维目录树控件

}

然后运行就可以看到数据了:(此处我以2012年高级开发A组一等奖作品数据为例)

数据可以浏览了,现在给大家说一下功能如何调用。

我们先添加一个按钮,然后在按钮的click事件中写代码:

private voidbutton1_Click(object sender,EventArgs e)

{

//调用 添加标注 功能

axmx_TDEViewCtrl1.SetFuncItem("CreateMark");

}

通过这样一句话,就可以调用三维平台已有的添加标注的功能。

SetFunItem方法需要的参数是功能插件的别名,这个别名可以在MapGIS安装目录下Program文件夹中的一个叫做ActiveXFuncList.xm的文件中查看,节点属性中的DispName属性就是可调用的方法别名。

下图为添加标注功能演示截图:

【原创】MapGIS K9 三维二次开发入门的更多相关文章

  1. 齐博x1频道的二次开发入门讲解

    要进行频道的二次开发,首先我们要先了解一下频道的目录结构,如下图最基本的几个目录admin 后台文件存放目录index 前台文件存放目录member 会员中心存放目录model 数据表模型目录trai ...

  2. [原创] 腾讯RTX二次开发相关的一些注意事项

    在企业即时通信方面,腾讯的RTX在国内的占有率应该是很高的 所以,就避免不了要与其他系统进行消息集成 腾讯为此提供了二次开发的工具包,支持JAVA.C#.VB等多种开发语言 但是,目前为止,腾讯官方提 ...

  3. ArcGIS二次开发入门(一)

    作者:朱金灿 来源:http://blog.csdn.net/clever101 公司培训ArcGIS二次开发(C#作为开发语言),自己回家动手实践了一下. 1. 首先是二次开发环境的安装(AE 10 ...

  4. 基础的Mapgis三维二次开发-插件式

    最近在做一个杭州石油的项目开发一个小系统. 1.命令必须是 ICommand 的派生类 using System; using System.Collections.Generic; using Sy ...

  5. 使用.NET开发AutoCAD——C#/AutoCAD 2018/ObjectArx/二次开发入门(二)

    1.开发环境配置: (1)安装AutoCAD2018: (2)安装VS2015: (3)安装ObjectARX 2018类库: (4)安装ObjectARX 2018 .NET开发向导(ObjectA ...

  6. Flexpaper二次开发入门教程》(十) Flexpaper简单使用-第一个Flexpaper例子

    4. Flexpaper简单使用 通过上面三章的内容,大家对Flexpaper.SWFTools应该有大概的了解了,SWF文件也已经生成了,我们开始进入Flexpaper的使用的介绍. 本章中只演示F ...

  7. Aveva Marine C# 二次开发入门001

    1# 引用 C:\AVEVA\Marine\OH12.1.SP4\Aveva.ApplicationFramework.dll C:\AVEVA\Marine\OH12.1.SP4\Aveva.App ...

  8. CAD二次开发起步

    1 环境搭建(VS 2017 + CAD 2019) CAD版本一般要比VS版本晚两年以上,比如我现在使用VS2017,则CAD要用2019版,至于CAD2018能不能用没试验过,有兴趣的小伙伴可以试 ...

  9. FlexPaper及二次开发

    Flexpaper二次开发入门教程 http://ajava.org/course/web/?page=2

随机推荐

  1. Win7下超级管理员创建普通权限任务

    已转至新的博客 http://www.raysoftware点击打开链接.cn/?p=49 项目中用到一个功能,Win7下超级管理员创建普通权限任务. 试了几种办法,例如获取资源管理器的Token,然 ...

  2. Make Yahoo! Web Service REST Calls With C#

    原文 http://developer.yahoo.com/dotnet/howto-rest_cs.html The .NET Framework provides classes for perf ...

  3. nginx 编译参数

    jrhnpt01:/root# nginx -V nginx version: nginx/1.7.7 built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (G ...

  4. css3选择器的比较(三) -- 元素选择器 (+, ~)

    元素选择器中w3cschool中有些翻译不太准确 比如 +:其实是与element1元素同级,位于element1元素之后的第一个element2元素 ~:其实是与element1元素同级,位于ele ...

  5. 第八章 C#面向对象编程(Object-Oriented Programming,OOP)简介

    .NET OOP 一.面向对象编程的含义 1.函数(过程化)编程常常导致单一的应用程序,即所有的功能都包含在几个代码模块中(常常是一个代码模块) 而使用OOP技术,常常使用许多代码模块,每个模块提供特 ...

  6. 在Attribute Inspector 上显示自定义的控件的属性

    FirstColor 跟 CornerRadious 都是新增的显示属性具体实现方法如下: @property(nonatomic,weak)IBInspectable UIColor *firstC ...

  7. 删除链表的中间节点和a/b处节点

    [说明]: 本文是左程云老师所著的<程序员面试代码指南>第二章中“删除链表的中间节点和a/b处节点”这一题目的C++复现. 本文只包含问题描述.C++代码的实现以及简单的思路,不包含解析说 ...

  8. Problem A Where is the Marble?(查找排序)

    题目链接:Problem A 题意:有n块大理石,每个大理石上写着一个非负数,首先把数从小到大排序,接下来有Q个问题,每个问题是是否有某个大理石上写着x,如果有,则输出对应的大理石编号. 思路:先排序 ...

  9. poj 1041 John's trip 欧拉回路

    题目链接 求给出的图是否存在欧拉回路并输出路径, 从1这个点开始, 输出时按边的升序输出. 将每个点的边排序一下就可以. #include <iostream> #include < ...

  10. (Problem 72)Counting fractions

    Consider the fraction, n/d, where n and d are positive integers. If nd and HCF(n,d)=1, it is called ...