永发信息网

如何使用ArcGIS中的动态显示技术

答案:1  悬赏:30  手机版
解决时间 2021-01-07 17:41
如何使用ArcGIS中的动态显示技术
最佳答案
如何使用动态显示技术
3.1概述
这个介绍主要说明如何有效地使用ArcGIS Framework中的动态显示技术。介绍当前的一些使用方法和需求,演示一些GIS中需要采用动态显示技术的例子,以及一些接口的使用介绍。
3.2 Dynamic map在动态显示技术中的使用
推荐使用基于DynamicMap类的IDynamicMap接口,来使Dynamic map可用或不可用。

下面是IDynamicMap使用代码:
[C#]
//Cast the dynamic map from the focus map.
IDynamicMap dynamicMap = m_hookHelper.FocusMap as IDynamicMap;
//Make sure to switch into dynamic mode.
if (!dynamicMap.DynamicMapEnabled)
dynamicMap.DynamicMapEnabled = true;

[VB.NET]
' Cast the dynamic map from the focus map.
Dim dynamicMap As IDynamicMap = CType(m_hookHelper.FocusMap, IDynamicMap)
' Make sure to switch into dynamic mode.
If (Not dynamicMap.DynamicMapEnabled) Then
dynamicMap.DynamicMapEnabled = True
End If
(上述或以下有可能涉及的代码都是.net例子,但是最近我自己完成了vc6.0的Demons)
当设置Dynamic map为Enable,那么动态显示将使用OPenGL的render context来绘制基本的地图图层和动态图层。

3.3 Dynamic mode下的绘图
以下是两种Dynamic mode绘图方式:
(1) 实现IDynaimcLayer接口中的DrawDynamicLayer方法
(2) 监听动态显示的两个事件:
IDynamicMapEvents.BeforeDynamicDraw;
IDynamicMapEvents.AfterDynamicDraw;

3.3.1 绘图方式的两种选择(事实是本质的draw都是OpenGL方法)
(1)使用AO的API
(2)直接调用OpenGL的API
默认情况下OpenGL的纹理(texture)可用。需要注意的是,在最初需要开始利用OpenGL的方法时,要求关闭OpenGL 2D texture flag。
3.4绘图方式采用使用AO的API
[C#]
//Set the marker symbol.
m_dynamicSymbolProps.set_DynamicGlyph(esriDynamicSymbolType.esriDSymbolMarker,
m_markerGlyphs[2]);

//Draw a marker symbol.
DynamicDisplay.DrawMarker(m_point);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
高中课文雷雨的作者是谁?
米袋计划平台办公地址在哪儿?想去实地考察下
唱标,议标,评标,围标是什么含义
报案没有回执怎么办?
习少一个点念什么
鬼吹灯之盗墓笔记和鬼吹灯之沙海在哪里看啊?
笔记本电脑,12寸,12.2寸,12.3寸,12.5寸,
四川成都到色当县距离
尤我是什么意思
3m晶锐70有侧后档吗
什么时候买房最合适 为什么开盘当天买房最优
刚买两年五座小客车年检需要什么手续
网金社的平台简介
北京话 跟丫死磕是什么意思?
我想问下联邦基金利率和超额准备金利率是什么
推荐资讯
一般宠物猪多少钱一只
写字楼和空中商铺什么样区别
9.8×2.5怎样简便计算?
剑桥少儿英语和playway有什么区别
蜂密加生姜泡水喝有什么好处
理科壹号教育嘉陵校区环境怎么样?
今天学开车,教练说我不如好老娘们,脑袋里一
边境风云里面三人一起吃饭这个场景放两次是什
牛口吐白沫,肚子胀,拉稀怎么办?跪求
女人屁股大好还是屁股小好?
a=2倍根号十则a的取值范围是多少
手碰到火碱水了!怎么办?求!感谢好心人求答
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?