SuperMap iDesktop常见问题解答集锦(十)

作者:皇皇

问:SuperMap iDesktop Cross 8C在Linux系统上使用需要哪些许可?
答:桌面本身不需要许可,由于该桌面是由iObjects Java开发出来的,所以需要设置iObjects Java的许可。

问:SuperMap iDesktop 8C 中类型转换中的点转线转换失败,什么原因?
答:首先,转换过程中设置的关联字段类型要是数值型、文本型和宽字符型中的一种;其次,若点数据集中所有点对象的连接字段值为空,或连接字段值都为唯一值,或连接字段值部分为空部分有值,并且非空字段值唯一时,转换为线数据集会失败。

问:SuperMap iDesktop 8C 中类型转换中的点转线功能中的关联字段支持哪些字段类型?
答:目前只支持数值型、文本型和宽字符型字段。

问:对一个明显存在自相交的面数据集进行“面内无自相交”的拓扑检查,返回结果一直为空?
答:在进行拓扑检查的时候需要将拓扑预处理勾选上,先进行拓扑预处理再进行拓扑检查即可

问:在打开桌面后,在界面上使用相关功能,发现有些按钮可用、有些不可用,如何设置可以使界面恢复正常?
答:界面出现问题,有些按钮不可用,是界面配置文件错误,在iDesktop的安装文件夹中找到Configuration文件夹,把SuperMap.Desktop.RecentFile.xml文件替换成新的即可。

问:需要设置一条宽15米的铁路怎么实现?
答:第一步:在资源库中新建一个三维符号,在符号编辑区内是有一个100*100的小方格,横向将100个小方格填充满就为实际1米,如果填充不足,则按照百分比来计算,比如:横向填充了50个小方格,则实际长度为0.5米。第二步:将数据加载到场景,对数据图层设置图层风格,如果在资源库中实际长度为1米,在这里则设置为15,如果资源库中实际长度为0.5米,在这里则设置为30.

问:iDesktop 如何连接远程服务器上的PostgreSQL数据库,进行创建数据源或打开数据源?
答:(1)将postgre的依赖库拷贝到桌面bin包路径下面(libeay32.dll、libiconv-2.dll、libintl-8.dll、libpq.dll、ssleay32.dll),注意位数和桌面一致,依赖库在postgre安装Bin路径都有,目的是为了让打开或者新建数据源不是灰色的。
(2)修改postgresql.conf配置文件中的listen_addresses项值设定为“”,在9.0 Windows版中,该项配置已经是“”无需修改。(在PostgreSQL\9.3\data路径下)。
(3)pg_hba.conf在该配置文件的host all all 127.0.0.1/32 md5行下添加以下配置,或者直接将这一行修改为以下配置host all all 0.0.0.0/0 md5 ; 如果不希望允许所有IP远程访问,则可以将上述配置项中的0.0.0.0设定为特定的IP值。

问:有一幅地图,想把里面的标签图导出为excel,怎么操作啊?
答:支持导出。首先需要把标签专题图保存为CAD数据集,然后导出CAD数据集为excel格式的数据即可。

问:SuperMap iDesktop 8C 中怎么实现影像数据集只显示部分范围区域?
答:可以在影像数据集的【属性】中的【图像属性】的显示范围中设置一个面数据集后,显示影像数据集范围就是该面数据集内的区域。

问:发布的地图服务里点数据的标签有部分显示不了,被截取掉了,怎么办?
答:答:这是因为标签本身占据一定的外接矩形的范围,如果是边界上的点,那么其标签长度过长的话,会出行标签超出数据集边界范围的,故发布服务后,会出现被截取掉的现象,不过也很好处理。编辑点数据集–在四周的边界刺几个点以撑大数据范围–然后删除刚才刺的点,这是数据范围大了,再制作的标签的地图后,发布服务就不会出现该问题。

问:如何设置栅格数据集的指定栅格值像元的颜色啊?
答:可以设置,在栅格图层里–右键–设置颜色对照表–添加指定栅格值对应颜色的子项即可。

问:影像集合数据集能不能生成缓存,在场景里用啊?
答:可以啊,影像集合数据集并不支持生成场景缓存,但是可以生成矢量地图缓存, 然后将矢量缓存添加场景里使用。

问:面数据制作了分段专题图,选择了颜色带,但是怎么选择显示方式呢?
答:我们的颜色带有两种显示方式,随机和渐变方式,在颜色方案里选中颜色带,进行设置显示方式。

问:在制图过程中点太密集,标签专题图难免存在标签被覆盖不显示的情况,请问如何设置标签的优先级让特定的标签优先显示?

答:可以添加两个图层,结合过滤显示设置,让你需要重点显示的标签在上一个比例尺显示,没有那么重要的在下一个比例尺显示。

问:倾斜模型中的分层效果是怎么实现的呢?
答:分层和普通的模型单体化不同的一点就在于需要每一个楼层的矢量面数据,比如一栋5层高的楼房,地面的底部高程为0米,每层高3米,就需要5个重叠的矢量面,建两个字段来分别存储底部高程和拉伸高层,第一楼底部高层就为0,拉伸高度为3,第二楼底部高程为3,拉伸高度为3,以此类推,给每一个面的这两个字段赋值,加载到场景中,给该矢量图层风格设置中设置高度模式为相对地面,设置底部高程和拉伸高度。最后对图层设置选择风格时设置贴对象模式。

问:现在有某地区的道路网络数据,并且有居民点小区数据,现在需要先建一些商场,要求商场2km范围内,居民区数量不低于3处,用桌面如何实现?

答:(1)使用网络分析中的服务区分析,服务点选择居民点数据,服务半径设置为要控制的距离2千米,分析结果会以cad数据集的形式存在于一个临时数据源中,将结果数据集复制出来,并且转换为简单面数据集.

(2)最后通过拓扑检查操作,检查出重叠区域大于3的面区域就是可以用于商场选址的备选区域了:拓扑检查方法:对上一步转换出来的面数据集进行拓扑算子为:面内无重叠的拓扑检查,然后再对检查结果进行再一次的同样的拓扑检查操作,最后的到的结果即为重叠区域操作3的备选区域;即可满足居民区要大于3个的条件。

问:有全国的甲乙级别的医院点数据和全国行政区划县的面数据,怎么统计每个县城有多少个甲乙级别的医院啊?
答:可以实现,用“数据”–“属性更新”功能来统计,用区县的面对象去统计包含了多少个点数据。具体参数设置,可查看联机帮助文档。

问:SuperMap iDesktop 8C绘制对象时鼠标旁边的X、Y值的显示框有什么作用,是否可让他隐藏?
答:这个显示框是实现当前鼠标所在的坐标系下的X、Y值,可按Tab键输入X和Y值后点确认可绘制出X、Y对应的节点;如果需要隐藏可以在【绘制对象】模块中的【绘制设置】中不选参数化设置即可。

问:SuperMap iDesktop 8C在Oracle、SQL server数据库型数据源中新建或者复制一个数据集,查看数据集属性信息发现数据表名和数据集名不一致,怎么使它一致?
答:在桌面8C版本中默认是不一致的,在8.10版本中如果要使数据表名和数据集名一致,可以打开桌面安装目录/bin/SuperMap.xml文件,将第143行中的DTNameTablaNameSame参数中的false改为true后保存即可。

问:对一个场景中的面图层设置贴对象的高度模式,场景中有模型,但是却没有在模型上面看到对应的面对象,这个该怎么处理?
答:将矢量面图层放在场景图层的最上面既可看见。

问:SuperMap iDesktop 8C中对矢量数据集做标签专题图,表达式是字段是单精度类型,地图上显示的标签怎么控制小数点只有两位?
答:选中标签图层右键,点击【修改专题图】,在专题图的【数值文本精度】设置标签后两位小数。

问:SuperMap iDesktop 如何做模型单体化,实现选择模型高亮显示和展示模型信息效果?
答:桌面倾斜摄影模型单体化是结合对应的矢量面数据来实现的,矢量面的准确性对最后的效果有着很大的影响。具体实现步骤:先将倾斜摄影和矢量面数据集一起加载到场景中,选中矢量面图层,右键修改选择对象风格,设置为贴对象风格,并且为了显示效果可以设置半透明。返回场景中选择模型即可高亮显示,双击就会弹出对应的属性窗口可以查看对应的属性。

问:SuperMap iDesktop 8C在oracle数据源中新建一个数据集后,在数据库中怎么找不到对应的数据表?
答:SuperMap iDesktop 8C以后的版本新建的数据集名与存储在oracle数据库中的对应数据表名是不一致的,对应的表名统一为SMDTV_N("_"前面不变,N是和数据集在SMregister中ID字段值一致),对应的数据表名也可以在桌面数据集【属性】中的【属性信息】中查看。

问:SuperMap iDesktop 8C场景中的矢量图层切osgb场景缓存后,导入在场景中打开发现原来的标签图层文本变成黑块,怎么回事?
答:主要是osgb场景缓存中不支持场景中有二维的风格化符号,如果要用osgb场景缓存建议用三维对象和三维符号,否则切矢量场景缓存。

问:把地形数据添加到场景里了,用三维分析中的坡度坡向分析其结果值怎么都为0啊?
答:先将地形数据DEM添加到地图里,用栅格查询看看数据的坡度坡向值是否为0,如果为0,那么数据本身就有问题,如果不为0,那么应该就是电脑的3D显示默认不是独立显卡,请检查,计算机–管理–设备管理–显示系统–英伟达显卡设置为默认的3D显示。

问:连接PostgreSQL数据源时,服务器名称填写IP地址,连接失败,不填反而能连接成功?
答:是因为没有给服务器IP赋予权限,导致客户端连接失败。在PostgreSQL数据库安装目录data文件下有个pg_hba.conf文件。在host all all 127.0.0.1/32 md5后面加上一句host all all 0.0.0.0/0 md5,这样赋予IP权限后,服务器名称就可以填写IP地址,否则只能填127.0.0.1

问:SuperMap iDesktop 8C倾斜摄影模型单体化怎么实现?
答:做倾斜摄影模型单体化首先需要一个与模型对应的面数据集,没有面数据集可以在三维里面绘制或者参考博客(http://blog.csdn.net/supermapsupport/article/details/50351902)进行提取。在场景中加载倾斜摄影模型,然后把面数据集添加到场景,设置面数据集图层,菜单风格设置里面高度模式为贴对象,填充风格透明度设置100%,在场景里面就可以选中模型高亮显示了。高亮显示的样式可以在图层管理器里面设置,选中面数据集图层,右键,对象选择风格。

问:文本数据集转点有没有办法提取的是文本对象的中心点
答:可以,先将文本数据属性表打开,选中所有记录,右键另存为属性数据集,属性数据中存有文本对象的范围字段:SmSdriN,SmSdriS,SmSdriW,SmSdriE.新建两个双精度的属性字段X,Y,更新列:X= W+E/2;Y=N+S/2;然后用属性转点功能,将XY字段作为XY坐标生成对应的中心点点数据集。

问:如何将文本数据集的文本内容添加到数据集的属性表字段中
答:使用数据类型转换中的文本转字段即可将文本信息添加到属性字段中。

问:进行填挖方之后能得到填挖的面积,但是怎么计算出填挖的区域面呢,能生成一个面对象吗?
答:可以的。先进行填挖方分析得到结果数据集A,对A栅格数据集进行栅格代数运算,将栅格值大于等于0的赋值为1,将小于0的栅格赋值为-1,这样得到栅格数据集B ,将栅格B转换为矢量面,其中value值为1的面就是挖的区域,为-1的面就是填的区域。

问:SuperMap iDesktop 8C中是否支持Max3D导出的CAD模型数据集中的模型数据做贴图?
答:不支持;支持在桌面中制作的矢量模型对象做贴图,而Max3D中制作的模型一般在Max3D中就做好贴图,然后再导出为CAD模型数据集。

问:资源里的带有箭头的线型符号,可以修改箭头方向吗?
答:可以的。线型符号的箭头方向符号是一个矢量点符号,可以制作一个带有方向的箭头符号,对线型符号进行编辑—折线中心—选择符号(带方向的箭头符号)----调整宽度。

问:SuperMap iDesktop 8C中导入CAD数据在地图窗口中打开不显示,选中才显示,怎么办?
答:在导入CAD数据弹出设置框时,勾选保持参数化对象,打开显示正常。

问:有一个栅格数据和点数据,如何将该栅格数据的高程值添加对应位置点的字段中?
答:先将栅格数据矢量化为面数据集,再采用属性更新功能,提供属性的数据选择矢量化面数据集集,目标数据为需要添加字段的点数据集,空间关系为包含,设置好对应的字段信息确定即可。

问:32位单精度浮点型栅格数据导入失败的原因是什么?
答:导入时是否选择了默认的DCT编码类型,而32位单精度浮点型的栅格数据,需要选择无编码即可。

问:四维图新提供的标准导航数据里只有基础道路,道路名称,道路名称关联,路网节点和转向节点数据表,但是没有提供超图接口所需要的行政区划表怎么办?
答:在四维的数据里,找到Admin表和Fname表,用组件的路网编译工具处理下得到行政区划表AdminCode。
接口:DataCompiler.extractAdminCode()。

问:制作标签专题图是,字段表达式使用函数不起作用怎么办?
答:每个数据库函数用法不一样,需要传正确的用法下来底层才能查出记录
例如udb引擎double转int:CAST( SmSdriW AS Int)

问:SuperMap iDesktop 8C将一个数据源中的CAD模型数据数据集复制到另一个数据源中纹理丢失,什么原因,怎么办?
答:主要是3DMax中导出的CAD模型数据集中的纹理图片是存储在数据源中的,如果将该数据集复制到另一个数据源中,原数据源中存储的纹理图片没有复制过去,所以造成纹理丢失;可以将CAD复合数据集转成模型数据集,然后再将模型数据集复制到另一个数据源中。

问:DWG文件导入到iDesktop里,打开到地图,会显示出一些不正常的文字,而用AutoCad工具打开dwg文件不会出现该问题,是怎么回事啊?
答:其实显示出来的不正常的文字,是特殊字体库里的文字,而AutoCad工具打开dwg文件默认是忽略了这些缺省的字体库文件,而iDesktop是会解析这些字体的,因为缺少字体库,所以出现不正常的文字,目前我们的810版本的iDesktop已经支持加载和解析字体库文件(shx格式)。只要在导入dwg文件时加载其配带的shx字体库文件即可。

问:SuperMap iDesktop 8C中打开2副地图发现地图中的标签专题中都是设置的微软雅黑但是文本风格明显不一样,什么原因?
答:除了专题图中的标签风格设置的一样外,还要保证2副地图的图层属性中的Alpha通道参数设置的一样。

问:三维自定义专题图中设置颜色字段后管线消失?
答:所设颜色值不正确导致,颜色由RGB转换的方法:将颜色对应的RGBA分别由十进制转换为十六进制(A是透明度设置),转换完成后将结果按照ABGR的顺序组合起来,将组合结果由十六进制转换为十进制。结果即为颜色值。例如:橙色:RGB(255, 165, 0),十进制转十六进制:R:FF,G:A5,B:00,A:FF;组合结果:FF00A5FF;十六进制转十进制:4278232575;

问:为什么WMS服务已经打开,将数据集拖入到场景却报打开失败呢?
答:如果需要将WMS服务叠加到场景的话,在场景的图层管理器窗口里,在普通图层节点处,鼠标右键—打开OGC服务图层,然后填写WMS服务地址,名称,选择WMS服务类型,这样即可将WMS服务添加到场景。

问:SuperMap iDesktop 8C中打开3DMax中导出的CAD模型数据集所在的数据源发现里面没有该CAD模型数据集,什么原因?
答:这个是由于在3DMax导出CAD模型数据集时,所存储该数据集的数据源已经在iDesktop中打开,需要先关闭该数据源,然后再导出CAD模型数据集。

问:SuperMap iDesktop 8C中对地图生成地图网格时怎么不能选经纬网格,只有公里网格?
答:这是因为地图的坐标系是平面投影坐标系;平面投影坐标系的地图只能生成公里网格,地理坐标系的地图既能生成经纬度网格又能生成公里网格,所以想生成经纬度网格,可以将地图进行投影转换,转成地理坐标系。

问:SuperMap iDesktop 8C(810)在影像数据集上添加一个面数据集,设置面数据集图层风格为半透明怎么没有效果?
答:在地图属性勾选alpha通道即可

问:网络分析失败,结果数据集报错:存在空间位置不匹配
答:出现该报错的原因是:由于构网时容限太大导致网络数据检查出错,构网时容限改小一点即可

问:桌面能够实现用一个点数据集打断一个线数据集吗
答:能,首先用点线数据构建网络数据集,将结果网络数据集中的弧段数据打来属性表,选择所有对象右键另存为线数据集即可。

问:ArcGis服务器发布的Rest地图服务数据在SuperMap iDesktop 8C中怎么和其它数据叠加显示?
答:ArcGis服务器发布的Rest地图服务数据不能直接在SuperMap iDesktop 8C中打开,但用SuperMap iServer产品转发后可以打开,并和其它数据叠加显示。

问:iDesktop 可以将设置模型半透明化吗?模型半透明后直接观察地下管网效果
答:可以实现。iDesktop 8C SP2及之后版本针对osgb模型缓存设置图层的前景色、透明度

问:线对象打断失败?造成的原因有哪些?
答:打断失败可能存在的原因:1:容限异常,检查是否异常大。清除容限即可;2:当打断对象为参数对象时,如圆弧、三点弧、样条曲线等,打断功能也将失效。CAD 数据集中存在参数化对象。

问:如何将三个CAD数据集导出为一个CAD格式的数据?
答:没有直接的办法,但是可以通过追加记录,将三个数据集追加为一个CAD数据集,然后在进行导出操作。

问:建立文件型或数据库型数据源,制作地图发布到iServer后,在桌面上修改地图,iServer上的地图会变吗?
答:用桌面在iServer发布的地图以及场景,因为文件型数据源是独占的,所以如果是文件型数据源的话,iServer和iDesktop是不能同时使用的,如果要改动,就先关闭iServer,然后去桌面进行修改,之后保存工作空间即可,保存好后,iServer 会自动改。

问:SuperMap iDesktop 8C 扩展开发,修改地图图层风格后,如何刷新图层管理器树节点符号?
答:首先获取图层管理器layersControlManager=SuperMap.Desktop.Application.ActiveApplication.MainForm.DockBarManager[typeof(LayersControlManager)].Control as LayersControlManager;然后指定图层刷新layersControlManager.LayersTree.RefreshNod(layersControlManager.LayersTree.FindNode(layer));

问:SuperMap iDesktop 8C用‘+’连接两个字段做专题图,为什么专题图没出来?
答:表达式连接字段时,UDB文件型数据源用‘|’。oracl和sql server数据源用‘+’。连接的时候如果是非字符串类型的字段需要先用 Str函数转换,如:Name + Str(SMID)。

问:SuperMap iDesktop 8C扩展开发时如何给textBox控件添加TextChanged事件?
答:布局里面添加textBox控件,桌面启动完成后会进入DesktopPlugin.cs类(DesktopPlugin.cs是创建插件的时候自动生成的,和插件名称一样)的MainForm_Loaded方法,在这个方法里面获取到textBox控件,并给他添加TextChanged事件。

问:SuperMap iDesktop 8C扩展开发时怎么获取添加的textBox控件里面的值?
答:在布局文件添加textBox控件控件时有‘onAction=“DesktopPlugin1.MyCtrlActionTextBox”’这个属性,需要时用‘ITextBox textbox = SuperMap.Desktop.Application.ActiveApplication.MainForm.RibbonManager[typeof(MyCtrlActionTextBox)] as ITextBox;’获取到textBox控件就可以得到里面的值。

问:SuperMap iDesktop 8C 生成地图缓存的时候想要修改地图缓存的DPI,可以设置吗?在哪里设置?

答:在安装路径bin下面找到SuperMap.xml ,找到CustomDPIEnable节点
控制是否开启使用用户自定义 DPI,即下面两个DPI参数值的设置是否生效。该参数的值有两种情况:true 表示开启,false 表示不开启。默认值为 true 。
自定义的水平方向上的 DPI 数值,默认值为96。
自定义的垂直方向上的 DPI 数值,默认值为96。
CustomDPIX和 CustomDPIY这两个配置文件参数需一同使用。该参数是对原来的 CustomMapRatioX 和 CustomMapRatioY 参数变更的结果,如果用户想通过CustomDPIX和 CustomDPIY 新参数达到变更前默认的地图显示和出图的显示效果,需要将两个参数值都修改为 76.2 即可

问:SuperMap iDesktop 8C 扩展开发修改数据集属性后,属性表里面的数据怎么刷新?
答:修改记录集Recordset属性后,属性表ITabularControl里面的数据不能自动刷新,需要用tabularControl.Recordset = recordset从新指定数据。

问:CAD配准最多只能采用两个点配准,精度不够,怎么解决?
答:由于目前对 CAD 数据集的配准仅支持矩形配准方法和偏移配准方法。如果要采用多点来进行配准,先将复合数据集转为简单数据集,然后再进行批量配准,最后再由简单转复合就可以了

问:启动monggoDB数据库的时候报错:引用程序无法正常启动(0xc000007b),请单击“确定”关闭应用程序,怎么解决?
答:是由于缺库导致的,缺少libeay32.dll、ssleay32.dll这两个类库,mongoDB的解压版没有这2个库,安装版有,直接将缺少的两个类库拷贝过去即可。

问:在使用SuperMap iDesktop 8C进行配图或其他操作时,保存工作空间后,希望恢复上一次的工作空间,该如何操作呢?
答:在保存工作空间时,程序会自动保存一个“~[0]+工作空间名”的影藏工作空间文件,只要找到这个文件打开就是上次保存的工作空间。

问:在使用SuperMap iDesktop 8C进行配图或其他操作时,保存工作空间后,希望恢复上一次的工作空间,该如何操作呢?
答:在保存工作空间时,程序会自动保存一个“~[0]+工作空间名”的影藏工作空间文件,只要找到这个文件打开就是上次保存的工作空间。

问:SuperMap iDesktop 7C扩展开发,如何获取悬浮窗口里面某个控件的值?
答:扩展开发时,布局文件里面定义悬浮窗口时有control="DesktopPlugin1.MyControl"属性,通过IDockBar dockBar = SuperMap.Desktop.Application.ActiveApplication.MainForm.DockBarManager[typeof(MyControl)];获取悬浮窗口,dockBar.Control去获取控件对象,再获取里面的值。

问:SuperMap iDesktop 8C导出CAD数据集为dwg文件时为什么自定义的属性丢失了?
答:导出时需要勾选弹出框右上角的导出扩展字段和导出扩展记录,同理如的时候也要勾选导入扩展字段和导入扩展记录

问:SuperMap iDesktop 7C 制作专题图的时候怎么去掉前面几个字节?
答:UDB和Oracl数据源表达式可以用substr(字段名,4),sqlServer数据源用SUBSTRING( 字段名,4,len(字段名)-3),就是去掉前面3个字节的意思。

问:SuperMap iDesktop 7C在Oracle数据源中新建数据集,数据集的名称长度有限制吗?
答:数据集名称不超过30个字节,其中由于数据库中表名的命名规则,纯汉字不超过11个,字母不超过30个

问:SuperMap Deskpro 6中怎么将地图的网格中的格网转成面对象?
答:通过【网格工具】生成地图网格,然后将生成的网格数据(CAD数据集)通过【类型转换】生成线数据集,最后再通过【线数据集拓扑构面】生成面数据集。

问:ArcMap打开SDE数据库是有数据集的,但是SuperMap iDesktop 7C打开OracleSpatial数据库型数据源连接成功后,数据源下没有数据集?
答:首先,ArcMap创建要素的时候需要使用ST_Geometry存储格式。其次,创建OracleSpatial数据源跟创建SDE数据库的用户必须一致。

问:win10系统下,可以用Deskpro 2008吗?
答:可以啊,正常安装后配置好许可,启动程序请用管理员身份运行,这样才能读取到C盘的许可。

你可能感兴趣的:(桌面GIS,supermap)