关于 MapXtreme 方面的几个问题:
需求 1:
用户从客户端圈选几个小区,点击相应的按钮进行计算或其它处理,处理结束后,返
回相关的框来显示处理结果,并且把选中的小区改变成红色。接着可以再处理其它小区,
刚刚改变颜色的小区仍然显示改变后的颜色。
(我觉得跟你们搜索网元后的显示以及搜索频点的显示的效果类似)
两个问题:
1. 选中小区后,如何获得小区的相关信息。
我是通过获得选择集来从.tab 文件获得小区的主键(已实现),然后再通过该主键利用
ado.net 去查询数据库来得到。不知道方法是否与你们一致。
2. 处理结束后,把选中小区显示成红色,这个还没解决好,更新失败,可能方法还有问
题。
我想按你们相关类似功能的实现方法来做。改变地图后,如果不保存工作空间,那么对小
区颜色的改变在下一次登陆不生效,反之下一次登陆颜色改变。你们用的是临时图层么?
或是样式覆盖等其它的方法?
需求 2:
新增基站。
问题:
1. 你们关于基站以及小区图层是在服务器端定时生成的,用户通过下载来进行更新。如
果用户需要在地图上新增一个基站。基站及小区的画法应该如何实现。
我觉得思路应该是:为了保持一致,使用你们画基站和小区时的 b rush,pen 等,往基站
和小区天线的.tab 图层里加,同时更新数据库。所以,需要知道你们使用的画笔画刷的样
式以及画扇形的方法。
不知道这个思路是否正确。
答复:
需求 1:
1、 方式是一致的,非常类似的功能应该是点击一个小区,在属性面板上显示小区的属性。
2、 类似于多个小区定位,给你代码
public void LocateMultisCell(ArrayList cellNameList,string layerName, Map map,
Color cellColor,string labelString)
{
if(cellNameList.Count == 0)
return;
MapInfo.Data.Table isTable1 =
MapInfo.Engine.Session.Current.Catalog.GetTable(layerName);
if(isTable1 != null)
isTable1.Close();
评论5