- 积分
- 20677
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2011-7-16
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2013-2-28 00:37:54
|
显示全部楼层
本帖最后由 fatcat916 于 2013-2-28 00:40 编辑
自己回一个吧。
上面帖子是套用低版本的例子,出错原因还未查明。
按照老王的教程“MeteoInfo二次开发教程(九) ”的例子重新做了一遍,绘图成功。
代码如下:
VectorLayer aLayer = new VectorLayer(ShapeTypes.Polyline);
aLayer.LayerName = "航线";
aLayer.LegendScheme = LegendManage.CreateSingleSymbolLegendScheme(ShapeTypes.Polyline, Color.Black, 2);
aLayer.LegendScheme.LegendBreaks[0].Color = Color.Blue;
aLayer.Visible = true;
aLayer.EditAddField("ID", typeof(string)); // 这一句是必须的。
List<PointD> plist = new List<PointD> {
new PointD(110, 40),
new PointD(120, 20),
new PointD(125, 30),
new PointD(120, 30)
};
var aPolyline = new PolylineShape();
aPolyline.Points = plist;
int shapeNum = aLayer.ShapeNum;
if(aLayer.EditInsertShape(aPolyline, shapeNum))
aLayer.EditCellValue("ID", shapeNum, "HX");
//Add layer
layersLegend1.ActiveMapFrame.AddLayer(aLayer);
layersLegend1.ActiveMapFrame.MapView.PaintLayers();
layersLegend1.Refresh();
|
|