- 积分
- 82
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-6-25
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
王老师出现问题的图如上: 标注后 渠县下面的那个点 本是大竹 但是没标注出来
华蓥 下面的邻水也没显示出来
必须要把地图放大 这两个点的标注才能显示出来
加载图层代码如下为一个加载函数:
private void LoadLayers()
{
layersLegend1.ActiveMapFrame.MapView.LockViewUpdate = true;
//Load country layer
string aFile = Application.StartupPath + "\\shape\\sichuanmask.shp";
MapLayer aLayer = MapDataManage.OpenLayer(aFile);
aLayer.LegendScheme.breakList[0].Color = Color.WhiteSmoke;
layersLegend1.ActiveMapFrame.AddLayer(aLayer);
//Load river layer
aFile = Application.StartupPath + "\\shape\\shengjie.shp";
aLayer = MapDataManage.OpenLayer(aFile);
aLayer.LegendScheme.breakList[0].Color = Color.Black;
((PolyLineBreak)aLayer.LegendScheme.breakList[0]).Size = 1;
layersLegend1.ActiveMapFrame.AddLayer(aLayer);
aFile = Application.StartupPath + "\\shape\\shijie.shp";
aLayer = MapDataManage.OpenLayer(aFile);
// ((PointBreak)aLayer.LegendScheme.breakList[0]).Color = Color.Red;
aLayer.Expanded = true;
layersLegend1.ActiveMapFrame.AddLayer(aLayer);
//Load city layer
aFile = Application.StartupPath + "\\shape\\sichuanjibenzhan.shp";
aLayer = MapDataManage.OpenLayer(aFile);
((PointBreak)aLayer.LegendScheme.breakList[0]).Color = Color.Black;
aLayer.Expanded = true;
layersLegend1.ActiveMapFrame.AddLayer(aLayer);
//Label city name
VectorLayer cityLayer = (VectorLayer)aLayer;
// cityLayer.AvoidCollision =false;
cityLayer.LabelSet.FieldName = "NAME";
cityLayer.LabelSet.AvoidCollision = true;
cityLayer.LabelSet.LabelAlignType = MeteoInfoC.Legend.AlignType.Center;
// cityLayer.LabelSet.Offset = 0;
cityLayer.LabelSet.XOffset = 0;
cityLayer.LabelSet.LabelFont = new Font("Arial", 8);
cityLayer.LabelSet.LabelColor = Color.Black;
cityLayer.LabelSet.DrawShadow = false;
cityLayer.LabelSet.ShadowColor = Color.White;
cityLayer.LabelSet.ColorByLegend = false;
cityLayer.AddLabels();
// //Set layout map size
// mapLayout1.ActiveLayoutMap.Left = 40;
// mapLayout1.ActiveLayoutMap.Top = 40;
// mapLayout1.ActiveLayoutMap.Width = 600;
// mapLayout1.ActiveLayoutMap.Height = 400;
//Refresh
MeteoInfoC.Global.Extent aExtent = mapView1.Extent;
layersLegend1.ActiveMapFrame.MapView.LockViewUpdate = false;
mapView1.ZoomToExtent(aExtent);
// layersLegend1.ActiveMapFrame.MapView.ZoomToExtent(70, 140, 10, 60);
layersLegend1.Refresh();
}
红色部分为标注代码,请老师解答下 谢谢
|
|