电子地图设计总结1:
1,在MapX中,每张单独的地图都被表示成单独的一个图层,所有的图层存储在layers集合中。Layers集合由Layer对象组成,按顺序编号为0到n。Layer对象由features对象组成,features对象又是由Feature对象组成,对应于地图中的点、线、区域或符号。
最上面一层为Layers(1),Layers(2)位于Layers(1)的下面,以次类推。最下面的图层最先绘制,最上面的图层最后绘制。在应用程序中,合理地安排好每层在Layers中的顺序是至关重要的。比如说有两个图层,一层为点,一层为区域,则应将点层放到区域层的上方,否则区域会将点覆盖。
另外,在进行地图选择操作时,根据要求调整图层的顺序也是十分重要的。MapX中的选择工具总是从可选择图层中的最上层开始选择,如果在地图上的同一位置存在多个位于不同层的地图对象,其结果是很难精确地选择到目标对象。因此,最好将被选择图层提到最上层显示。
2,MapX控件使用过程中,应先将MapX5.0的安装目录下的sample->C++下的MAPX.H和MAPX.CPP拷贝到程序目录底下,在对话框中点右键插入ActiveX控件,避免采用project->add component控件的方式,这样加载后的类成员函数不全。将Map对象与某一变量关联的方法为在Dlg的DoDataExchange函数中插入DDX_Control(pDX,IDC_MAP1,m_mapx);
3,MapX Mobile显示中文地图问题.首先,到微软官方网站下载Windows Mobile 2003 Second Edition Emulator Images for Pocket PC - CHS.msi,安装后即可显示中文PPC环境.MapX Mobile-5.05默认的X86环境安装setup_x86.bat好像只适合PPC2003,打开EVC,选择Tool->Remote file viewer将X86底下所有文件复制到PPC上的Program Files->MapInfo->MapX Mobile下,再将本目录system->fonts复制到PPC->windows->fonts目录下,system 底下的几个dll文件复制到windows目录下.在EVC文件夹中找出一个6KB的regsvrce.exe复制到PPC上,运行它分别注册mapx50.dll,msafearraydataset.dll,mapxadods.dll,再打开EVC的Remote Registry Editor创建STRING key HKEY_LOCAL_MACHINE->Software->MapInfo->MapX Mobile->5.0->Geodictionary=->My Documents->Maps->,至此注册完成.将你所需要的地图全部文件移植到Maps目录下即可正常显示中文地图.
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhangjie_xiaoke/archive/2008/11/25/3371148.aspx