首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

C#与Mapx 怎么实现将小车 加入map中

2013-01-05 
C#与Mapx 如何实现将小车 加入地图中现在实现 放大,缩小,抓取,说白了都是一句话的事,而用axMap1.CurrentTo

C#与Mapx 如何实现将小车 加入地图中
现在实现 放大,缩小,抓取,说白了都是一句话的事,而用 
 axMap1.CurrentTool = MapXLib.ToolConstants.miSymbolTool; 不知道用的是这个不,不过在图里放的是一个数字7,怎么能把它换成小车呢?或者有其他的方法。。请大家帮助

[解决办法]
那不是7,是面旗帜吧!因为你没有指定显示哪一个符号,所以mapx默认选择了那个旗帜。
    你在axMap1.CurrentTool = MapXLib.ToolConstants.miSymbolTool;
     后面添加下面的这句
        axMap1.DefaultStyle.PickSymbol();
       会弹出符号选择对话框,你可以找到类似小车的符号。
[解决办法]
关于小车的实现, 我在目前的项目中考虑了很久, 最终采用的是CreateSymbol创建符号图元来做的, 自认为效果还可以.我用的 Mapinfo 是5.0版本.
具体做法是: 按照360度方向划分了16个方位, 每一个方位对于一个 小车bmp图标. 这个图标有限制最大尺寸为 48x48, 颜色最多为 256个索引色;在画小车时, 先取得当前坐标和方位索引, 然后Update Point和 style 图标档名称, 相关代码如下:
                    newX = trackList[i].Lng;
                    newY = trackList[i].Lat;
                    carFeature.Point.Set(newX, newY);
                    bmpindex = trackList[i].DirectionIndex + 1;
                    carFeature.Style.SymbolBitmapName = String.Format(@"\trackcar\car{0:d}.bmp", bmpindex);
                    map.ZoomTo(map.Zoom, newX, newY);
                    carFeature.Update(Type.Missing, Type.Missing);

热点排行