请问c# mapx开发的如何添加图元 我使用的是 .net 2005 mapx 5增加图元的代码怎么也调试不通过!哪位贴个例子看看! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这里基本上没有做gis的,所以不一定有人用过mapx。 基本类型不用看,看看方法就行了,马上开会就不整理了,抱歉 #region "创建车辆地图对象" private delegate void _CreateVehicleFeatrue(MotorData motordata); private void CreateVehicleFeatrue(MotorData motordata) { if (_map.InvokeRequired) { BeginInvoke(new _CreateVehicleFeatrue(CreateVehicleFeatrue), new object[] { motordata }); return; } try { MapXLib.Feature fea = new MapXLib.Feature(); fea.Attach(_map.GetOcx()); fea.Style = new MapXLib.Style(); fea.Type = MapXLib.FeatureTypeConstants.miFeatureTypeSymbol; fea.KeyValue = motordata.MotorID; fea.Style.SymbolFontRotation = (short)motordata.Gps.Direction; fea.Style.SymbolType = MapXLib.SymbolTypeConstants.miSymbolTypeTrueTypeFont; if (motordata.Gps.Speed > 5) { fea.Style.SymbolFont.Name = appset.Vehicle_MoveFont; fea.Style.SymbolCharacter = appset.Vehicle_MoveChar; fea.Style.SymbolFont.Size = appset.Vehicle_MoveSize; fea.Style.SymbolFontColor = appset.Vehicle_MoveColor; } else { fea.Style.SymbolFont.Name = appset.Vehicle_StopFont; fea.Style.SymbolCharacter = appset.Vehicle_StopChar; fea.Style.SymbolFont.Size = appset.Vehicle_StopSize; fea.Style.SymbolFontColor = appset.Vehicle_StopColor; } fea.Style.SymbolFontOpaque = false; //fea.Style.SymbolFontColor = (uint)MapXLib.ColorConstants.miColorYellow; if (GpsPosition.IsValid(motordata.Gps.Longitude, motordata.Gps.Latitude)) { fea.Point.Set(motordata.Gps.Longitude, motordata.Gps.Latitude); } else { fea.Point.Set(_map.CenterX, _map.CenterY); } fea = _map.Layers._Item("Vehicle").AddFeature(fea, Type.Missing); fea.Update(fea, Type.Missing); motordata.AdditionalAttribute.Add(appset.MapFeatrueKey, fea); motordata.MotorDataChanged += new MotorData.OnMotorDataChanged(UpdateVehicleFeature); motordata.BackgroundValueChanged += new MotorData.OnBackgroundValueChanged(motordata_BackgroundValueChanged); _VehicleFeatures.Add(fea.KeyValue, motordata); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } 哪些是C#内置的数据结构 C#保存EXCEL文件问题 不明白的线程调用问题!!!!?????? 如何取到一个多媒体文件的播放时长 C# 如何给自定义控件设置默认取消按钮和默认回车按钮? 我要学习,找到自己的定位!!散分! 如何开发自定义的对话框组件?如开发一个MyOpenDialog,能有像OpenDialog一样的应用方法! 求教关于c#自定义控件的问题~~ 为何在WndProc中捕捉不到RichTextBox中的WM_IME_CHAR消息 请问有谁知道vs2005下水晶报表怎样发布? 为什么用反射修改对象属性后,PropertyGrid里面全部都变了?
#region "创建车辆地图对象"
private delegate void _CreateVehicleFeatrue(MotorData motordata);
private void CreateVehicleFeatrue(MotorData motordata)
{
if (_map.InvokeRequired)
{
BeginInvoke(new _CreateVehicleFeatrue(CreateVehicleFeatrue), new object[] { motordata });
return;
}
try
{
MapXLib.Feature fea = new MapXLib.Feature();
fea.Attach(_map.GetOcx());
fea.Style = new MapXLib.Style();
fea.Type = MapXLib.FeatureTypeConstants.miFeatureTypeSymbol;
fea.KeyValue = motordata.MotorID;
fea.Style.SymbolFontRotation = (short)motordata.Gps.Direction;
fea.Style.SymbolType = MapXLib.SymbolTypeConstants.miSymbolTypeTrueTypeFont;
if (motordata.Gps.Speed > 5)
{
fea.Style.SymbolFont.Name = appset.Vehicle_MoveFont;
fea.Style.SymbolCharacter = appset.Vehicle_MoveChar;
fea.Style.SymbolFont.Size = appset.Vehicle_MoveSize;
fea.Style.SymbolFontColor = appset.Vehicle_MoveColor;
}
else
{
fea.Style.SymbolFont.Name = appset.Vehicle_StopFont;
fea.Style.SymbolCharacter = appset.Vehicle_StopChar;
fea.Style.SymbolFont.Size = appset.Vehicle_StopSize;
fea.Style.SymbolFontColor = appset.Vehicle_StopColor;
}
fea.Style.SymbolFontOpaque = false; //fea.Style.SymbolFontColor = (uint)MapXLib.ColorConstants.miColorYellow; if (GpsPosition.IsValid(motordata.Gps.Longitude, motordata.Gps.Latitude))
{
fea.Point.Set(motordata.Gps.Longitude, motordata.Gps.Latitude);
}
else
{
fea.Point.Set(_map.CenterX, _map.CenterY);
}
fea = _map.Layers._Item("Vehicle").AddFeature(fea, Type.Missing);
fea.Update(fea, Type.Missing);
motordata.AdditionalAttribute.Add(appset.MapFeatrueKey, fea);
motordata.MotorDataChanged += new MotorData.OnMotorDataChanged(UpdateVehicleFeature);
motordata.BackgroundValueChanged += new MotorData.OnBackgroundValueChanged(motordata_BackgroundValueChanged);
_VehicleFeatures.Add(fea.KeyValue, motordata);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}