MapX5 操作

在项目中地图操作的功能都是我同事作的,也不知道不没有人发过,今天我发上来,大家要是用到的话就参考一下吧,写的不好欢迎拍砖^_^

  1. class VehiclePosition
  2.     {
  3.         #region 全局变量
  4.         /// <summary>
  5.         /// 车辆的样式
  6.         /// </summary>
  7.         private Style VehicleStyle = new Style();
  8.         #endregion
  9.         #region 在图层上绘制车辆
  10.         /// <summary>
  11.         /// 在地图上绘制车辆
  12.         /// </summary>
  13.         /// <param name="Mainmap">要显示车辆的地图</param>
  14.         /// <param name="Lyr">要显示车辆的图层</param>
  15.         /// <param name="X">车辆的经度位置</param>
  16.         /// <param name="Y">车辆的纬度位置</param>
  17.         /// <param name="VehicleName">车辆的名称</param>
  18.         /// <param name="SymbolFontRotation">车辆的方向</param>
  19.         public void drawVehicle(AxMap Mainmap, Layer Lyr, double X, double Y, string VehicleName, short SymbolFontRotation)
  20.         {
  21.             try
  22.             {
  23.                 Point point = new PointClass();
  24.                 point.Set(X, Y);
  25.                 Feature sourceFeature = new FeatureClass();
  26.                 Feature feature2 = new FeatureClass();
  27.                 RowValues rowValues = new RowValuesClass();
  28.                 Fields fields = new FieldsClass();
  29.                 FeatureFactory featureFactory = Mainmap.FeatureFactory;
  30.                 fields.Add("name""name", AggregationFunctionConstants.miAggregationSum, FieldTypeConstants.miTypeString);
  31.                 rowValues = Mainmap.DataSets.Add(DatasetTypeConstants.miDataSetLayer, Lyr, Lyr.Name, 0, 0, 0, fields, false).get_RowValues(0);
  32.                 rowValues._Item("name").Value = VehicleName;
  33.                 sourceFeature.Attach(Mainmap.GetOcx());
  34.                 feature2.Attach(Mainmap.GetOcx());
  35.                 this.VehicleStyle.SymbolFontRotation = SymbolFontRotation;
  36.                 sourceFeature = featureFactory.CreateSymbol(point, this.VehicleStyle);
  37.                 feature2 = Lyr.AddFeature(feature2, rowValues);
  38.                 sourceFeature = Lyr.AddFeature(sourceFeature, rowValues);
  39.                 Lyr.LabelAtPoint(X, Y);
  40.                 Lyr.LabelProperties.Style.TextFontColor = 0xff;
  41.                 //Lyr.LabelProperties.Style.TextFont.Bold = true;
  42.                 Lyr.LabelProperties.Style.TextFontHalo = true;
  43.                 sourceFeature.KeyValue = VehicleName;
  44.                 sourceFeature.Update(sourceFeature, rowValues);
  45.                 feature2.Update(feature2, rowValues);
  46.                 Mainmap.DataSets.RemoveAll();
  47.             }
  48.             catch
  49.             { }
  50.         }
  51.         /// <summary>
  52.         /// 加载车辆图元的属性
  53.         /// </summary>
  54.         /// <param name="SymbolFontName">车辆的样式集</param>
  55.         /// <param name="SymbolCharacterNumber">车辆的样式</param>
  56.         /// <param name="uintSymbolFontColor">车辆的颜色</param>
  57.         /// <param name="SymbolFontSize">车辆的大小</param>
  58.         public void loadFeatureVehicleProperty(string SymbolFontName, short SymbolCharacterNumber, uint uintSymbolFontColor, int SymbolFontSize)
  59.         {
  60.             try
  61.             {
  62.                 this.VehicleStyle.SymbolFont.Name = SymbolFontName;
  63.                 this.VehicleStyle.SymbolType = SymbolTypeConstants.miSymbolTypeTrueTypeFont;
  64.                 this.VehicleStyle.SymbolFontColor = uintSymbolFontColor;
  65.                 this
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值