红蓝军模拟对抗三维电子沙盘开发教程第十课 wpf建立3D GIS数字地球
红蓝军模拟对抗三维电子沙盘开发教程第十课
在SDK中自带了一个自定义的基础面板,该面板是基于Canvas完成有封装,完成了多点触摸支持, 鼠标单键拖动,滚轮放大,利用该基础面板,二次开发就只用关心内容了:上代码:
<m1:MCanvasxmlns:m1="clr-namespace:GisLib;assembly=GisLib" x:Class="Teach3DGIS.UserControl1"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:m="clr-namespace:GisLib"mc:Ignorable="d" Height="262" Width="444"></m1:MCanvas>
using GisLib;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;namespace Teach3DGIS
{/// <summary>/// UserControl1.xaml 的交互逻辑/// </summary>public partial class UserControl1 : MCanvas{public UserControl1(){InitializeComponent();}}
}
你在IDE中则可以看到如下界面:
这个时候你只需要关注在UI上承现什么内容,多点触摸操作,和鼠标拖动动作已经有支持了,调用方法如下:
UserControl1 ShowImage = new UserControl1();Canvas.SetTop(ShowImage, 200);Canvas.SetLeft(ShowImage, 300);Canvas.SetZIndex(ShowImage, 30);ShowImage.MShow(); //显示动画
在这个基础上SDK内置了一些面板有:显示图片( GisLib.ShowImage),显示视频(GisLib.ShowVod),显示全景图片(GisLib.Show360Image),显示全景视频(GisLib.Q360Vod),显示xps文档(GisLib.ShowDocx)
调用代码如下:
显示图片
GisLib.ShowImage ShowImage = new ShowImage(AppDomain.CurrentDomain.BaseDirectory + "背景.jpg");Canvas.SetTop(ShowImage, 200);Canvas.SetLeft(ShowImage, 300);Canvas.SetZIndex(ShowImage, 30);ShowImage.MShow(); //显示动画
显示视频
GisLib.ShowVod ShowImage = new ShowVod(AppDomain.CurrentDomain.BaseDirectory + "战争场景.wmv",new TimeSpan(0));Canvas.SetTop(ShowImage, 200);Canvas.SetLeft(ShowImage, 300);Canvas.SetZIndex(ShowImage, 30);ShowImage.MShow(); //显示动画
显 示全景图片面板:
GisLib.Show360Image ShowImage = new Show360Image(300,200);ShowImage.InitPic(@"D:\MTOUCH GIS\data\成都市\全景\全景.jpg");Canvas.SetTop(ShowImage, 200);Canvas.SetLeft(ShowImage, 300);Canvas.SetZIndex(ShowImage, 30);ShowImage.MShow(); //显示动画
全景视频:(可显示720设置拍摄的视频,如小米全景相机拍摄的)
GisLib.Q360Vod ShowImage = new GisLib.Q360Vod(320, 200);ShowImage.InitPic (@"D:\MTOUCH GIS\data\成都市\全景\全景.jpg","全景视频");Canvas.SetTop(ShowImage, 200);Canvas.SetLeft(ShowImage, 300);Canvas.SetZIndex(ShowImage, 30);ShowImage.MShow(); //显示动画
xps文档显示:
GisLib.ShowDocx ShowImage = new ShowDocx("1.xps");Canvas.SetTop(ShowImage, 200);Canvas.SetLeft(ShowImage, 300);Canvas.SetZIndex(ShowImage, 30);ShowImage.MShow(); //显示动画
由于WPF的特性。所以所有面板可支 持多人同时操作,可在一人操作地图的同时,另一人也 可同时操作其它面板,互不影响。
红蓝军模拟对抗三维电子沙盘开发教程第十课 wpf建立3D GIS数字地球相关推荐
- 三维虚拟电子沙盘开发教程第一课 利用WPF建立3d gis数字地球(非axhost方式)
三维虚拟电子沙盘开发教程第一课 利用WPF建立3d gis数字地球(非axhost方式) 下一步新建一个wpf工程.然后引用SDK中的gislib.dll,NewGisBiao.dll如下图: 下面上 ...
- 武警中队智慧磐石,科技强勤,三维电子沙盘开发教程第十三课
武警中队三维电子沙盘智慧磐石 科技强勤开发教程第十三课 SDK中自带了一套 导航系统,用的是比较详细的导航数据,你们懂的,修正了一下在使用互联网服务器时候的一个BUG,请在使用这部分功能时务必下载上面 ...
- 无人机倾斜摄影三维全景电子沙盘开发教程第5课
无人机倾斜摄影三维电子沙盘开发教程第5课 多点触摸三维电子沙盘可视化交互地理信息系统(M3D GIS)秉承贰拾多载(2001)工匠精神自主知识产权的通过手势多点触摸控制的大型二.三维一体化地理信息系统 ...
- 三维电子沙盘开发教程 数字沙盘培训教程
三维电子沙盘开发教程 数字沙盘培训教程 无人机倾斜摄影三维全景建模 设置system.ini 如下内容 Server=122.112.229.220 user=GisTest Password=chi ...
- 虚拟现实MR VR AR三维数字沙盘电子沙盘开发教程第2课
虚拟现实MR VR AR三维数字沙盘电子沙盘大数据人工智能开发教程第2课 上一篇实现了一个基本球,在基本球中已经实现了类似google earth的操作,即鼠标单键拖动,滚轮放大,鼠标中键按下左右旋转 ...
- 数字沙盘虚拟电子沙盘开发教程第9课
多点触摸三维电子沙盘可视化交互地理信息系统(M3D GIS)(平衡+极简+实用)TREND MTOUCH 3D GIS(English)是成都趋势电子有限责任公司秉承贰拾多载(2001)工匠精神自主知 ...
- Android StudioTV开发教程(十八)建立电视频道,开发电视输入服务
Android Studio TV开发教程 (转自Android官网https://developer.android.com/training/tv/start) 文章源自:光谷佳武 https:/ ...
- 电子沙盘数字沙盘开发教程第26课:三维数字沙盘M3D GIS导航数据开发代码说明
电子沙盘开发教程第26课:三维数字沙盘M3D GIS导航数据开发代码说明 SDK中自带了一套 导航系统,用的是比较详细的导航数据,你们懂的,修正了一下在使用互联网服务器时候的一个BUG,请在使用这部分 ...
- 三维电子沙盘无人机倾斜摄影开发教程第22课
三维电子沙盘无人机倾斜摄影开发教程第22课 gis3d.MapGo(103, 30, 19); //第一次跳转会有点慢,主要是获取数据,如果是用的公网服务器可能会卡一下.第二次就不会了 运行上面的代码 ...
- 三维电子沙盘数字沙盘开发教程第3课
三维电子沙盘数字沙盘开发教程第3课 下面介绍矢量图层的控制显示:上代码 foreach(string key in gis3d.SetFile.Biao.Keys)// gis3d.SetFile.B ...
最新文章
- xcode 4.2 如何调试 EXC_BAD_ACCESS
- Redis的基本操作以及info命令
- 压缩JS和CSS常用的工具
- 《Python Cookbook 3rd》笔记(4.16):迭代器代替 while 无限循环
- 使用d3.v3插件绘制出svg图
- C语言丨比较浮点数的大小
- MS SQL开发经典
- 主要排序算法(Python实现)
- Centos 7 Puppet之foreman介绍安装测试
- python构造函数
- java 导出EXcel数据
- 【转载】RPG或SLG游戏在线地图编辑器
- 【光学】基于Matlab模拟光流场
- python白平衡-OpenCV3 自动白平衡:灰度世界和完美反射算法
- 分治法求数组最大最小数
- python爬虫入门爬取lpl选手价值排行榜
- 打造数字化软件工厂 —— 一站式 DevOps 平台全景解读
- 夺命雷公狗---DEDECMS----32dedecms电影网评价星星功能的实现
- Access Token机制简单介绍
- 一个使用LABVIEW将16进制字符串分割转化的办法
热门文章
- 国内十家微交易平台,正规微交易平台排行榜
- 合唱队形java_动态规划之合唱队形问题(最长递增子序列变形)
- 十五、JDBC(高琪java300集+java从入门到精通笔记)
- 谷歌又放大招 Disco Diffusion!AI生成超高质量绘画!
- 66ccff.xyz
- tc的linux命令详解,linux tc命令详解
- 北京农村商业银行:应用质量掘金再造“探秘”之旅
- win10系统怎么去除桌面图标的小箭头
- [Perl] Data::Dumper模块的用法简介
- 英伟达 jetson xavier agx 开发(1)开发环境搭建