PIE SDK临时元素的绘制

 

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

示例代码

 

 1         /// <summary>
 2         /// 临时点
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void toolStripButton_DrawTempPoint_Click(object sender, EventArgs e)
 7         {
 8             //1.空间位置信息
 9             IPoint point = new PIE.Geometry.Point();
10             point.PutCoords(115, 80);
11 
12             //2.符号信息
13             ISimpleMarkerSymbol simpleMarkerSymbol = new SimpleMarkerSymbol();
14             simpleMarkerSymbol.Style = SimpleMarkerStyle.SMSCircle;
15             IMarkerSymbol symbol = simpleMarkerSymbol as IMarkerSymbol;
16             symbol.Color = Color.Red;
17             symbol.Size = 10;
18             //绘制临时点
19             //activeView.DrawGeometry(symbol, point as IGeometry);
20             mapControlMain.DrawShape(point as IGeometry, symbol); 
21         }
View Code

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

示例代码

 

 1          /// <summary>
 2         /// 临时线
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void toolStripButton_DrawTempLine_Click(object sender, EventArgs e)
 7         {
 8             //1.设置空间信息
 9             IPointCollection line = new Polyline();
10             line.AddPoint(100, 100);
11             line.AddPoint(400, 200);
12             //2.设置空间参考
13             (line as IGeometry).SpatialReference = mapControlMain.SpatialReference;
14             //3.设置显示符号
15             ILineSymbol lineSymbol = SystemSymbolSetting.Instance.DefaultLineSymbol;
16             //4.绘制图形
17             mapControlMain.DrawShape(line as IGeometry, lineSymbol);
18         }
View Code

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

示例代码

 1           /// <summary>
 2         /// 临时面
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void toolStripButton_DrawTempPolygon_Click(object sender, EventArgs e)
 7         {
 8             //1设置空间信息
 9             IPointCollection polygon = new Polygon();
10             polygon.AddPoint(100, 100);
11             polygon.AddPoint(100, 200);
12             polygon.AddPoint(200, 200);
13             polygon.AddPoint(200, 100);
14             polygon.AddPoint(100, 100);
15             //2设置空间参考
16             (polygon as IGeometry).SpatialReference = mapControlMain.SpatialReference;
17             //3.设置显示符号
18             IFillSymbol fillSymbol = SystemSymbolSetting.Instance.DefaultFillSymbol;
19             //4.绘制图形
20             mapControlMain.DrawShape(polygon as IGeometry, fillSymbol);
21         }  
View Code

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

示例代码

 1         /// <summary>
 2         /// 临时文本
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void toolStripButton_DrawTempText_Click(object sender, EventArgs e)
 7         {
 8             //空间信息
 9             IPoint point = new PIE.Geometry.Point();
10             point.PutCoords(200, 200, 0);
11             //符号信息
12             ITextSymbol textSymbol = new TextSymbol();
13             textSymbol.Color = Color.Green;
14             textSymbol.Size = 20;
15             textSymbol.Font = new Font("Times New Roman", 100, FontStyle.Bold);
16             textSymbol.Text = "hello!!!!!!!!!!!!!!!!!!!!";
17             //绘制图形
18             mapControlMain.DrawShape(point as IGeometry, textSymbol);
19         }
View Code

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

示例代码

 1 /// <summary>
 2         /// 临时图片
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void toolStripButton_DrawTempPic_Click(object sender, EventArgs e)
 7         {
 8             //空间信息
 9             IPolygon polygon = new Polygon();
10             IPointCollection pointCollection = new Polygon();
11             (polygon as IPointCollection).AddPoint(100, 100);
12             (polygon as IPointCollection).AddPoint(100, 200);
13             (polygon as IPointCollection).AddPoint(200, 200);
14             (polygon as IPointCollection).AddPoint(200, 100);
15             (polygon as IPointCollection).AddPoint(100, 100);
16 
17             //符号信息
18             IPictureFillSymbol picFillSymbol = new PictureFillSymbol();
19             OpenFileDialog openFileDialog = new OpenFileDialog();
20             openFileDialog.Filter = "Picture File|*.bmp";
21             if (openFileDialog.ShowDialog() != DialogResult.OK) return;
22             picFillSymbol.CreateFromFile(openFileDialog.FileName);
23             //绘制图形
24             IFillSymbol fillSymbol = picFillSymbol as IFillSymbol;
25             mapControlMain.DrawShape(polygon as IGeometry, fillSymbol);
26         }
View Code

2.5.4. 示例截图

 

原文地址:https://www.cnblogs.com/PIESat/p/10172285.html