1.技巧贴:快捷方式真方便
SuperMap Deskpro
提供了很多快捷方式,掌握其中的快捷操作,鼠标和键盘相结合会大大提高效率,比如,当你在窗口画线时,出了窗口范围,想移动,这时使用键盘上的
“
上
”“
下
”“
左
”“
右
”
键,要比
“
漫游
”
方便些。
2.技巧贴:使用XML技术合并工作空间
SuperMap GIS
提供了
XML
格式的工作空间管理方式,使用该技术可以方便的合并多个工作空间,使用方法是:先将
A
、
B
两个工作空间保存为
SXW
格式,再用记事本打开,将
A
中有关地图的信息拷贝到
B
中相应的地图节点下,保存即可。
3.问题:关于SuperMap GIS软件的升级(5.0→5.2),需要升级驱动
解决方法:
您可以从公司的下载中心下载
5.2.0
的安装包,安装完成以后,在
5.2.0
的安装目录下有一个
support
目录,从里面找到新的驱动程序
Sentinel Protection Installer.exe
,安装一下即可。
4.常见问题贴:问题2
将
SDB
转换为
PMR
,在
PDA
上打开该数据没有显示出地图。
原因分析:
PMR
格式中保存的是空间数据,地图配置(包括图层叠加、图层风格、专题图等)是保存在工作空间
PMW
文件中。
解决办法:
使用
eSuperMap Viewer
打开
PMR
,将需要叠加显示的数据集在一个地图窗口中打开,并为图层设置风格,然后保存地图和工作空间。将
PMR
和
PMW
文件下载到
PDA
设备上,打开工作空间和地图,数据就可以按照预先设定的样式和叠加顺序显示了。
5.问题:有时候在标签专题图中需要标注不同的字段,并使不同的标注以特殊的颜色显示,该怎么办呢?
解决方法:
1
、将要标注的图层复制两份叠加显示,然后分别对两个图层用不同的字段制作标签专题图,并使最上面的图层透明显示。不过当被标注的图层的数据量较大时要慎用。
2
、将字段保存成文本图层,与原始图层叠加显示。
6.问题:
对于刚刚接触
eSuperMap
尤其是在
VS2005
下进行开发的用户来说,可能会觉得一开始的配置问题比较繁琐,特别是在编译时出现一些配置相关的错误以及连接模拟器或是嵌入式设备的时候经常遇到程序无法执行的提示。
安装步骤:
1
、建立工程时包含开发包头文件和库文件;
2
、正确设置设备类型以及是模拟器还是设备,并与步骤
1
中库文件的设置保持严格的一致;
3
、运行前一定上传与前面设置对应
DLL
文件,包括设备类型、模拟器还是设备以及
DEBUG
版本还是
RELEASE
版本等;在
VS2005
下模拟器环境中调试一般是以共享目录的形式保存文件的,一定要将程序相关联的动态库文件添加齐全。
7.在SuperMap Objects中实现自定义添加空间对象的时候
如果数据集的数据量很大,要使用
Query
方法得到记录集然后调用
AddNew
方法添加对象,可以设置第一个参数查询条件为
“smid<
0”
,这样既可以得到记录集,又可以提高查询的速度,可谓两全其美。
8. 常见问题贴:问题1
进行
SuperMap IS .NET
项目部署时一般会需要修改地图服务的
IP
地址,与部署的服务器相对应,怎样修改呢?
解决办法:
在工程的
web.config
文件中增加以下三个
key
<add key="MapServer_Address" value ="192.168.119.112"/>
<add key="MapServer_Port" value = "8800"/>
<add key="MapServer_Enforced" value = "true"/>
参数说明:
第一个参数:服务器地址;
第二个参数:端口;
第三个参数:当
key
值与页面中的
MapControl
设置不同时,该参数为
true
表示取
key
的设置,该参数为
false
表示取
MapControl
的设置。
9.问题:关于SuperMap Deskpro中的投影转换
解决方法:
由于投影转换的计算精度问题,它的计算结果是不完全可逆的。强烈建议您在进行转换前对数据进行备份。
10.问题:我们在做地图的时候经常会碰到这样的问题,那就是,将做好的虚线线型进行风格设置,当线宽度设置为5以上的时候,整条线就会变得很粗,根本看不出虚线的风格效果。
解决方法:
解决的办法是在线型编辑器中对该线型进行固定宽度的限制(例如固定宽度值给
5
),就可以做出符合要求的线型了。
11.问题:在Windows 2003系统中使用SuperMap IS .Net经常会有不出图的问题
解决方法:
解决办法是这样的,在安装软件过程中已经新建了
output
虚拟目录,但是在
Windows 2003
默认情况下这个虚拟目录是没有读取权限的,可以在
Internet
信息服务中找到
output
这个虚拟目录,将读取的复选框钩上就可以了。
13.问题:如何在图层列表 LayerControl 中去掉不想列出的图层?
解决方法:
1
、新建一个类,在
*.cs
文件中继承
SuperMap.IS.WebControls.Utility.LayerFilter
,同时重写
Filter
方法;
2
、在
MapControl_MapFirstInit
事件定义此对象,并给
LayerControl.DisplayFilter
赋值。
类的代码如下
:
public TestFilter ()
{
}
public override bool Filter(Layer layer)
{
if(layer.Name == Tower@temp)
{
return false;
}
return true;
}
在页面中使用的代码如下:
在
MapControl_MapFirstInit
事件中添加
:
LayerFilter tf = new TestFilter();
this.LayerControl1.DisplayFilter = tf;
LayerControl1.Update();