在DeepEarth中进行点、线、多边形以及自定义图片图层的图形绘制

在上一篇文章《DeepEarth中的几何图形基础框架模型》中将整个DeepEarth的几何图形基础框架模型 进行了介绍,之后还通过了绘制一个三角形的应用示例演示了DeepEarth中的几何图形应用。本篇将续着 这篇文章介绍DeepEarth中的几何图形应用,包括基本图形绘制(点、线、多边形)和自定义图层的应用 。

一、绘制点图层

首先看看如何使用DeepEarth中的几何图形基础框架所提供的点基类(PointBase)来实现在地图上绘 制一个坐标点。其使用非常简单,如下代码块(效果图见本文末尾的截图):

//创建几何图层对象
var transformLayer = new GeometryLayer(map)
{
     UpdateMode = GeometryLayer.UpdateModes.TransformUpdate,
     ID = Guid.NewGuid().ToString()
};
map.Layers.Add(transformLayer);
//创建点对象
var dot = new PointBase();
dot.X = 106.5726;
dot.Y = 29.5627;
dot.Width = 100;
dot.Opacity = 0.88;
transformLayer.Add(dot);

二、绘制线条图层

绘制线条同绘制点一样的简单,如果只是绘制一条普通的线条可直接使用DeepEarth几何图形框架所提 供的LineString对象就可以完成线条的绘制,如下示例代码:

var transformLayer = new GeometryLayer(map)
{
     UpdateMode = GeometryLayer.UpdateModes.TransformUpdate,
     ID = Guid.NewGuid().ToString()
};
map.Layers.Add(transformLayer);
//创建线条对象,并初始其前景颜色为黄色,线条宽度为2像素
var line = new LineString(Colors.Yellow, 2);
//设置线条的起始和结束地理坐标
line.Points = new ObservableCollection<Point>()
{
     new Point(104.062021177233,30.6666587469201),
     new Point(106.489384971208,29.5076372217973)
};
//处理鼠标事件
line.MouseEnter += (oo, ee) =>
     {
         var l = oo as LineString;
         l.LineColor = Colors.Green;
     };
line.MouseLeave += (mo, me) =>
     {
         var l = mo as LineString;
         l.LineColor = Colors.Yellow;
     };
transformLayer.Add(line);

时间: 2024-12-08 16:19:42

在DeepEarth中进行点、线、多边形以及自定义图片图层的图形绘制的相关文章

DeepEarth中的几何图形基础框架模型

众所周知,DeepEarth是一套基于Silverlight的DeepZoom技术实现的开源地图开发组件,其内部提供 了常用的地图开发工具控件和通用的基础模型,如线条.多边形.不规则图形.图片等一系列图形图像的 基础架构模型,这为使用DeepEarth进行地图二次开发提供了非常方便的基础架构接口.本篇将介绍在 DeepEarth中的几何图形架构设计和所提供的基础架构模型框架. 在DeepEarth的几何图形架构中提供了最基础的几何图形应用开发模型,包括几何图层.点.线.多边 形.不规则图形等,在

DeepEarth中的拖放行为(DragBehavior)

在DeepEarth中,地图的拖放行为用于规范用户在操作地图的时候的选择.移动和绘制等操作模型.DeepEarth以枚举结构将其封装在地图控件(Map)的内部,源代码如下: /// <summary> /// 地图拖放行为 /// </summary> public enum DragBehavior { /// <summary> /// 鼠标成手型图标点在地图上拖放,地图的呈现随同鼠标的拖动进行移动并定位于鼠标释放的位置. /// </summary>

Excel2013柱形图中的系列线怎么添加?

  Excel2013柱形图中的系列线怎么添加?          1.我们先来看一下我们的数据,我们选中这些数据,点击[插入]标签 2.找到柱形图或者条形图,选择第二个,注意看它的形式 3.这是我们插入的柱形图,接着要添加系列线 4.双击条形图可以打开[设计]标签,找到[添加图表元素] 5.在下拉菜单中,找到[线条]--系列线 6.到此我们的系列线添加完毕,你还可以双击系列线来设置它的颜色.粗细.线型

Word2013中的波浪线怎么删除?

  Word2013中的波浪线删除的方法: 1.启动Word2013,将复制好的文字粘贴进去,看到很多波浪线,点击下方状态栏里面的书的按钮. Word2013 2.此时右侧出现一个语法的界面,在里面我们可以看到每一处的语法错误,单击忽略即可. Word2013 3.除此之外,我们可以直接选中波浪线的文字,右击,忽略也可以去掉波浪线. Word2013 4.去除完毕,文档干干净净,看上去美观多了.

Word2013中的波浪线如何删除

  Word2013中的波浪线删除的方法: ①启动Word2013,将复制好的文字粘贴进去,看到很多波浪线,点击下方状态栏里面的书的按钮. ②此时右侧出现一个语法的界面,在里面我们可以看到每一处的语法错误,单击忽略即可. ③除此之外,我们可以直接选中波浪线的文字,右击,忽略也可以去掉波浪线. ④去除完毕,文档干干净净,看上去美观多了.

word2010中参考文献回车线怎么删除

问题描述 word2010中参考文献回车线怎么删除 各位好, 如下图中,参考文献下的回车符无法选中,无法删除.但是不删除留白就太多了,请问大家有没有什么好的解决方法.谢谢! 解决方案 用上下左右键移动到该处,按delete键删除. 解决方案二: 应该是你的[1]那里用的引用的问题,你看1字外面有个虚线的方框 解决方案三: 其实没有必要删除回车键,你只要设置好段落间距就可以了,段前,段后分别设置成为0.5行,我们毕业设计就是这样要求的.你自己操作一下吧,其实很简单的. 解决方案四: 没必要删除,这

et dvantage-VS2010中 在箱线图时上 如何加 spec线和control 线

问题描述 VS2010中 在箱线图时上 如何加 spec线和control 线 这里我用的是NetAdvantage 中带的箱线图 如上图 在写这个箱线图的时候 写好的数据源和控件绑定好就OK了 但是 我现在需要在 这个箱线图中 加对应的spec线 和 control线 来看 箱线图是否超出范围, 可是这个箱线图的控件中 没有画 对应Y轴 画直线的 属性. 会需要用到自定义控件,我的问题来了,在定义控件要怎么写 才能要在这个箱线图上可以画出我想要的线.. 请大神们帮忙啊!最好是有代码!!!!!!

计算机图形学中的画线算法

问题描述 计算机图形学中的画线算法 计算机图形学 中点算法和bresenham 算法是什么关系? 解决方案 上面这个链接叙述的比较清楚

u盘-设备管理中没有“通用串行总线控制器”一栏,插U盘不起作用

问题描述 设备管理中没有"通用串行总线控制器"一栏,插U盘不起作用 按下开机按钮然后迅速按下del键 进入bois,找到USB Step,将USB Step的值修改为enable 保存并启动