1. 功能简介

在数据的处理中会用到临时元素的绘制,用于当前显示;临时元素包括点、线、面、文本、图片五种元素;目前PIE SDK支持这五种元素的绘制,下面对五种临时元素的绘制功能进行介绍。

2. 功能实现说明

2.1. 临时点的绘制

2.1.1 . 实现思路及原理说明

第一步

设置点的Geometry信息

第二步

设置点的符号

第三步

绘制临时点元素

2.1.2.  核心接口与方法

接口/类

方法/属性

说明

MapControl

DrawShape(IGeometry shape, ISymbol symbol)

绘制Shape

ISimpleMarkerSymbol

Style

获取或设置简单点符号样式

IMarkerSymbol

Color

获取或设置点的颜色

Size

获取或设置点的大小

2.1.3. 示例代码

 

项目路径

百度云盘地址下/PIE示例程序/08元素绘制/06临时元素的绘制

视频路径

百度云盘地址下/PIE视频教程/08元素绘制/06临时元素的绘制.avi

示例代码

         /// <summary>
/// 临时点
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripButton_DrawTempPoint_Click(object sender, EventArgs e)
{
//1.空间位置信息
IPoint point = new PIE.Geometry.Point();
point.PutCoords(, ); //2.符号信息
ISimpleMarkerSymbol simpleMarkerSymbol = new SimpleMarkerSymbol();
simpleMarkerSymbol.Style = SimpleMarkerStyle.SMSCircle;
IMarkerSymbol symbol = simpleMarkerSymbol as IMarkerSymbol;
symbol.Color = Color.Red;
symbol.Size = ;
//绘制临时点
//activeView.DrawGeometry(symbol, point as IGeometry);
mapControlMain.DrawShape(point as IGeometry, symbol);
}

2.1.4. 示例截图

2.2. 临时线的绘制

2.2.1. 实现思路及原理说明

第一步

设置线的Geometry信息

第二步

设置线的符号

第三步

绘制临时线元素

2.2.2.  核心接口与方法

接口/类

方法/属性

说明

MapControl

DrawShape(IGeometry shape, ISymbol symbol)

绘制Shape

ILineSymbol

Style

获取或设置简单符号样式

2.2.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/08元素绘制/06临时元素的绘制

视频路径

百度云盘地址下/PIE视频教程/08元素绘制/06临时元素的绘制.avi

示例代码

          /// <summary>
/// 临时线
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripButton_DrawTempLine_Click(object sender, EventArgs e)
{
//1.设置空间信息
IPointCollection line = new Polyline();
line.AddPoint(, );
line.AddPoint(, );
//2.设置空间参考
(line as IGeometry).SpatialReference = mapControlMain.SpatialReference;
//3.设置显示符号
ILineSymbol lineSymbol = SystemSymbolSetting.Instance.DefaultLineSymbol;
//4.绘制图形
mapControlMain.DrawShape(line as IGeometry, lineSymbol);
}

2.2.4. 示例截图

2.3. 临时面的绘制

2.3.1.  实现思路及原理说明

第一步

设置面的Geometry信息

第二步

设置面的符号

第三步

绘制临时元素

2.3.2.  核心接口与方法

接口/类

方法/属性

说明

MapControl

DrawShape(IGeometry shape, ISymbol symbol)

绘制Shape

IFillSymbol

可以自行设置符号样式

2.3.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/08元素绘制/06临时元素的绘制

视频路径

百度云盘地址下/PIE视频教程/08元素绘制/06临时元素的绘制.avi

示例代码

           /// <summary>
/// 临时面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripButton_DrawTempPolygon_Click(object sender, EventArgs e)
{
//1设置空间信息
IPointCollection polygon = new Polygon();
polygon.AddPoint(, );
polygon.AddPoint(, );
polygon.AddPoint(, );
polygon.AddPoint(, );
polygon.AddPoint(, );
//2设置空间参考
(polygon as IGeometry).SpatialReference = mapControlMain.SpatialReference;
//3.设置显示符号
IFillSymbol fillSymbol = SystemSymbolSetting.Instance.DefaultFillSymbol;
//4.绘制图形
mapControlMain.DrawShape(polygon as IGeometry, fillSymbol);
}

2.3.4. 示例截图

2.4. 临时文本的绘制

2.4.1.  实现思路及原理说明

第一步

设置临时文本的Geometry信息

第二步

设置文本显示的符号

第三步

绘制临时文本元素

2.4.2. 核心接口与方法

接口/类

方法/属性

说明

MapControl

DrawShape(IGeometry shape, ISymbol symbol)

绘制Shape

ITextSymbol

Color

获取或文本设置颜色

Size

获取或设置文本大小

Font

获取或设置文本字体

Text

获取或设置文本文字内容

2.4.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/08元素绘制/06临时元素的绘制

视频路径

百度云盘地址下/PIE视频教程/08元素绘制/06临时元素的绘制.avi

示例代码

         /// <summary>
/// 临时文本
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripButton_DrawTempText_Click(object sender, EventArgs e)
{
//空间信息
IPoint point = new PIE.Geometry.Point();
point.PutCoords(, , );
//符号信息
ITextSymbol textSymbol = new TextSymbol();
textSymbol.Color = Color.Green;
textSymbol.Size = ;
textSymbol.Font = new Font("Times New Roman", , FontStyle.Bold);
textSymbol.Text = "hello!!!!!!!!!!!!!!!!!!!!";
//绘制图形
mapControlMain.DrawShape(point as IGeometry, textSymbol);
}

2.4.4. 示例截图

2.5. 临时图片的绘制

2.5.1. 实现思路及原理说明

第一步

设置图片的Geometry信息

第二步

设置图片的符号

第三步

绘制临时图片元素

2.5.2. 核心接口与方法

接口/类

方法/属性

说明

MapControl

DrawShape(IGeometry shape, ISymbol symbol)

绘制Shape

IPictureFillSymbol

CreateFromFile()

图片从文本创建

2.5.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/08元素绘制/06临时元素的绘制

视频路径

百度云盘地址下/PIE视频教程/08元素绘制/06临时元素的绘制.avi

示例代码

 /// <summary>
/// 临时图片
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripButton_DrawTempPic_Click(object sender, EventArgs e)
{
//空间信息
IPolygon polygon = new Polygon();
IPointCollection pointCollection = new Polygon();
(polygon as IPointCollection).AddPoint(, );
(polygon as IPointCollection).AddPoint(, );
(polygon as IPointCollection).AddPoint(, );
(polygon as IPointCollection).AddPoint(, );
(polygon as IPointCollection).AddPoint(, ); //符号信息
IPictureFillSymbol picFillSymbol = new PictureFillSymbol();
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "Picture File|*.bmp";
if (openFileDialog.ShowDialog() != DialogResult.OK) return;
picFillSymbol.CreateFromFile(openFileDialog.FileName);
//绘制图形
IFillSymbol fillSymbol = picFillSymbol as IFillSymbol;
mapControlMain.DrawShape(polygon as IGeometry, fillSymbol);
}

2.5.4. 示例截图

最新文章

  1. STL模板中的map的使用与例题
  2. 問題排查:建立選單時的錯誤 errcode:65318,errmsg:must use utf-8 charset hint: [Vwda70520vr18]
  3. LeetCode Path Sum II (DFS)
  4. SQL语言简介
  5. PHP在Windows下安装配置第一步
  6. Application的多种值判断测试程序
  7. windows加固方案
  8. 1179: [Apio2009]Atm
  9. 学问Chat UI(1)
  10. node实现一个WEBSOCKET服务器
  11. ABP架构学习系列二:ABP中配置的注册和初始化
  12. Socket之心跳包实现思路
  13. new Date()传参的浏览器兼容性
  14. JMeter 测试 ActiveMq
  15. Oracle插入语句日期格式设置
  16. PAT甲级题解(慢慢刷中)
  17. CentOS 7源码安装zabbix
  18. J2EE企业级应用架构发展
  19. Excel 求差集和并集
  20. KafkaStream实现wordcount

热门文章

  1. Mathematical optimization数学上的最优化
  2. mysql 全文搜索 FULLTEXT
  3. Python - selenium_WebDriver 鼠标键盘事件
  4. 一套最全的JavaScript 语言基础知识点总结(思维导图10张)
  5. Jquery remove() empty() css()
  6. CKEditor富⽂本编辑器
  7. luoguP4735 最大异或和
  8. JDK1.8源码阅读系列之二:LinkedList
  9. [集合]线程安全的HashMap
  10. cnd 计费流量查询服务模块设计与实现