SuperMap GIS基础产品WebGIS FAQ集锦(5)

news2024/11/15 18:03:58

SuperMap GIS基础产品WebGIS FAQ集锦(5)
【iClient】iClient for Classic如何设置服务跨域时,请求json而不是jsonp?
【解决办法】可全局修改SuperMap.Util.isInTheSameDomain方法,使其返回为true;例如:

 SuperMap.Util.isInTheSameDomain= function (){
            return true
        }

【iClient】iClient for Openlayers 矢量图层添加要素,getFeatures获取要素的个数比地图显示上多,部分要素未显示?
【问题原因】排除要素重复的因素,是因为添加的feature要素的id重复
【解决办法】可以遍历要素数组,赋予唯一的id值即可
【iClient】Leaflet服务器端专题图,如何设置标签沿线标注?
【解决方法】使用labelExpression,如果多个字段,使用“”“||”连接。在这里插入图片描述

代码参考:

themeLabel = new L.supermap.ThemeLabel({
            labelExpression:"NAME"+"||"+"SmLength",
           alongLine: new L.supermap.ThemeLabelAlongLine({
                isAlongLine:true,
                alongLineDirection:L.supermap.AlongLineDirection.NORMAL,
           }),
           overlapAvoided:false,
           smallGeometryLabeled:false
           });
        themeParameters = new L.supermap.ThemeParameters({
            themes: [themeLabel],
            datasetNames: ["Rivers"],
            dataSourceNames: ["World"]
        });

【iClient】基于Vue2开发的iClient项目,迁移至Vue3能否兼容?
【解决方案】iClient兼容Vue2和Vue3,可以进行迁移。
【iClient】Leafleat切换地图控件,如何设置默认显示哪张地图?
【解决方案】可以通过设置初始状态来指定默认显示的图层。例如,可以使用map.addLayer()方法将特定的图层添加到地图中,并且在创建L.control.layers的时候,将该图层作为第一个参数传入。
【iClient】sql查询多个数据集,如何分辨查询结果归属的数据集?
【解决方案】打印查询结果,找到serviceResult.result.datasetInfos,其中包含featureRange信息,可以判断哪些要素属于该数据集。
【WebGIS】OpenLayer初始化地图,要加载2分钟左右才能显示出来,有什么办法可以加快显示速度?
【解决办法】底图加载缓慢有很多原因,从数据处理到发布服务、前端加载整个过程都会有影响:
1、数据如果存储在数据库,可以尝试新建文件型数据源,将数据集复制到文件型数据源中发布服务预览,对比数据库的加载速度。数据量比较大的情况下加载地图服务确实需要时间加载渲染,建议对地图切地图瓦片,然后发布瓦片为地图服务,加载速度更快。如果一定要动态出图(不切瓦片)的话,动态出图 11版本性能高, 相比10系列有31%左右提升。
2、iserver所在的服务器内存、cpu是否高,服务的并发量是否过大,这会影响底图加载;
3、还有就是网络原因,可以排查一下iserver服务器和web端所在服务器的带宽,传输过程网速的网速也有影响,或者打开其他页面查看是否存在加载缓慢的问题。
【WebGIS】在OpenLayer地图上,TileLayer图层如何裁剪ImageLayer图层?
【解决办法】TileSuperMapRest可以做矢量裁剪分析,ImageCanvas数据来源是一个 canvas 元素,其中的数据是图片,不同数据源之间无法做裁剪。地图如果是通过iserver发布的地图服务,可以通过TileSuperMapRest加载,设置clipRegion地图显示裁剪的区域。
【WebGIS】SuperMap.Geometry格式r如何转化成geojson格式?
【解决办法】例如:

var smGeometry = new SuperMap.Geometry.Point(-111.04, 45.68);
var smGeoJSON = new SuperMap.Format.GeoJSON();
var geoJSONStr = smGeoJSON.write(smGeometry);

【iClient】iClient for MapboxGL如何通过tileimage资源加载临时图层?
【解决办法】tileimage资源加载通过layersID获取进行切片的地图图层 ID,即指定进行地图切片的图层,可以是临时图层集,也可以是当前地图中图层的组合。如果此参数缺省则对全部图层进行切片。layersID 可以是临时图层创建时 templayers 的 ID,如 layersID=382139acf0,也可以是当前地图中的某些图层的 ID 编号。
示例 tiles URL:https://iserver.supermap.io/iserver/services/map-world/rest/maps/World/tileimage.png?scale={scale}&x={x}&y={y}&width={width}&height={height}&origin=%7B%22x%22%3A-180%2C%22y%22%3A90%7D&layersID=756e6e713be74157981492d3b2e0c528_38642d77ea4f42dba92d45ca85d1806e
示例代码:在这里插入图片描述

【iClient】iClient for Classic如何通过token调用设有权限的数据服务?
【解决办法】使用SuperMap.Credential接口,验证token安全信息。
示例代码:

SuperMap.Credential.CREDENTIAL=new SuperMap.Credential("U3WEMRc2Pbaa5m_hxsvI7hEzz_cFUb6zV2xrtunCefpusFTkG-r1wGuAzfO3FBH8gP7ePRhN3Q69KtHpHcls4A..","token");

示例如图:在这里插入图片描述

【iClent】MapBox 点击查询不到数据
【问题原因】使用点去查询线或者点,需要线或者点必须在线或者点上,前端要精细到具体位置很难
【解决办法】将这个点转换成一个面对象,然后是用面对象去查这些点或者线数据集,且设置半径按照zoom层级的增加而减小,zoom较小时屏幕看上去相差很小,其本身确实相距很远
【iClient】iClient for OpenLayers加载json数据发布的wmts服务,发现地图往上偏移,该怎么解决呢?
【问题原因】wmts是根据设置的坐标系起点和范围去排列瓦片的,如果没有设置则默认为全球范围,所以加载时会出现偏移的情况。
【解决方法】在加载wmts服务时,设置坐标系定义起点范围,即配置origin参数。

source: new ol.source.WMTS({
                url: "******",
                layer: 'world4490',
                matrixSet: 'Custom_world4490',
                format: 'image/png',
                tileGrid: new ol.tilegrid.WMTS({
                    origin: [-180.0, 83.62359619161411],
                    extent:[-180.0, -90.0, 180.0, 83.62359619161411],
                    resolutions: resolutions
                }),
                style: 'default'
            })

【iClient】在iClient for MapboxGL的EChartsGL中使用movelayer方法来移除图层为什么没有效果呢?
【问题原因】由于通过EChartsGL控件添加的数据并不是图层对象,所以使用movelayer方法不生效
【解决方法】直接在EChartsGL对象上再添加layer图层,然后对添加的layer对象使用movelayer方法移除。
【iClient】在iClient for Leaflet中设置聚合间隔后显示效果不对是什么原因导致的呢?
【问题原因】在Leaflet中设置聚合间隔参数maxClusterRadius(指的是一个聚合点的最大影响半径,默认为80,单位是像素);这个主要跟当前界面大小也有关系,需要根据当前界面分辨率来调整;
【解决方法】可通过当前界面分辨率来调整maxClusterRadius参数的大小查看效果,直到调整到一个合适的值
【iClient】已知瓦片比例尺和左上角坐标,如何求右下角坐标?
【解决办法】根据比例尺反推分辨率,算出瓦片实际长宽,就可以计算坐标,计算公式如在这里插入图片描述
【iClient】在iClient开发包中有ol和openlayer文件夹,文件都一样大小,这两文件夹有什么区别?
【解决办法】就是名字不一样,其他没什么不一祥;openlayers在4的时候叫openlayers 5以后一般叫ol;为了让老用户不奇怪,所以保留了openlayers的包
【解决办法】设置maxNativeZoom/minNativeZoom,超出NativeZoom的不再请求,而是放大/缩小原有的。
【iClient】进行SQL查询设置过maxFeatures,但为什么featureCount最大值还是20?
【问题原因】iClient的SQL查询接口默认设置了分页,toindex值默认为19
【解决办法】设置toindex为-1后再设置maxFeatures的值即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/855655.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UGUI组件EventTrigger用法

一.Unity编辑器中EventTrigger组件用法 1.添加事件类型 2.绑定gameObject指定组件的方法 3.方法执行逻辑 public class NewBehaviourScript : MonoBehaviour {public void PointerDown(){Debug.Log("Trigger PointerDown");} } 4.按下鼠标,绑定方法成功…

一文了解Java序列化和反序列化:对象的存储与传输

一文了解Java序列化和反序列化:对象的存储与传输 作者:Stevedash 发布时间:2023年8月9日 21点30分 前言 Java序列化是一项强大而重要的技术,它允许我们将对象转换为字节流,以便在存储、传输和重建时使用。在本文中&…

python爬虫相关

目录 初识爬虫 爬虫分类 网络爬虫原理 爬虫基本工作流程 搜索引擎获取新网站的url robots.txt HTHP协议 Resquests模块 前言: 安装 普通请求 会话请求 response的常用方法 简单案例 aiohttp模块 使用前安装模块 具体案例 数据解析 re解析 bs4…

Appium2 安装步骤

自 2022 年 1 月 1 日起,Appium 不再维护 Appium 1.x,官方支持的平台驱动程序的所有最新版本均不兼容 Appium 1.x,需要 Appium 2 才能运行。开启了全新的Appium 2.0之旅。可通过官方文档查看Appium2 移除的功能和新增的功能。 第一步、安装 …

io_uring笔记

目录 io_uring 异步io_uring 使用对比于epoll的效果io_uring效果好在哪? io_uring 异步 要求内核linux 5.10 异步四元组:1、init(create)2、commit 3、callback 4、destory fio : 测iops一秒钟读写磁盘的次数 方式磁盘iopsio_ur…

TCPDF生成PDF文件,含jpjraph生成雷达图

TCPDF生成PDF文件,含jpjraph生成雷达图 依赖自行安装 "tecnickcom/tcpdf": "^6.6","amenadiel/jpgraph": "4"雷达图生成 中文字体添加安装 没有封装,只作为测试案例展示 // 创建新的PDF文档$pdf new \TCPD…

throw和throws的区别

在Java中,throw和throws是两个关键字,用于异常处理。它们具有以下区别: 1. throw关键字: - throw关键字用于主动抛出异常。当程序执行到throw语句时,会创建一个异常对象并将其抛出。 - throw语句通常在方法内部…

fastadmin、vue、react图标库适用于多种框架

在二开fastadmin中,在写vue以及react时,侧边导航栏以及按钮中常常需要很多图标,那么这些图标应该去哪里得到呢,在这里给大家一个链接,这里有丰富的图标库,可以找到自己想要的进行使用。 点击下方链接&…

(树) 剑指 Offer 34. 二叉树中和为某一值的路径 ——【Leetcode每日一题】

❓ 剑指 Offer 34. 二叉树中和为某一值的路径 难度:中等 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入&#xff1a…

opencv 基础50-图像轮廓学习03-Hu矩函数介绍及示例-cv2.HuMoments()

什么是Hu 矩? Hu 矩(Hu Moments)是由计算机视觉领域的科学家Ming-Kuei Hu于1962年提出的一种图像特征描述方法。这些矩是用于描述图像形状和几何特征的不变特征,具有平移、旋转和尺度不变性,适用于图像识别、匹配和形状…

微信小程序 地图map(电子围栏圆形和多边形)

正常情况下是没有手机上画电子围栏的,公共平台上我也没找到,所以走了一个歪点子,就是给地图添加点击事件,记录点的位置,在画到电子围栏上就是添加电子围栏了,如果只是显示电子围栏就简单了 一、多边形电子…

kubernetes中的kubectl命令详解

kubectl命令详解 一:陈述式资源管理方法:(1)简单的基础命令1.查看版本信息2.查看资源对象简写3.查看集群信息4.配置kubectl自动补全5.node节点查看日志 (2)基本信息查看1.查看 master 节点状态2.查看命名空…

黑马大数据学习笔记4-Hive部署和基本操作

目录 思考规划安装MySQL数据库修改root用户密码配置Hadoop下载解压Hive提供MySQL Driver包配置Hive初始化元数据库启动Hive(使用Hadoop用户)Hive体验HiveServer2HiveServer2服务启动 Beeline p48、51、52 https://www.bilibili.com/video/BV1WY4y197g7/?…

《合成孔径雷达成像算法与实现》Figure3.9

代码复现如下: clc clear close all% 参数设置 TBP 100; % 时间带宽积 T 7.2e-6; % 脉冲持续时间 t_0 1e-6; % 脉冲回波时延% 参数计算 B TBP/T; …

计网实验第三章:TCP

问题集一 问题一 客户端计算机(源)使用的IP地址和TCP端口号是什么?将文件传输到gaia.cs.umass.edu? 图1 答:如图1中所示:192.168.31.7 ,80 问题二 gaia.c.s.umass.edu的IP地址是什么?发送的端口号是什么并接收此连接的TCP段…

VR内容定制 | VR内容中控管理平台可以带来哪些价值?

随着科技的不断发展,虚拟现实(VR)技术已经逐渐渗透到各个领域,其中教育领域也不例外。通过VR技术,学生可以身临其境地参与到各种场景中,获得更加直观、生动的学习体验。为了让教师更好地进行VR教学的设计和管理,提高教…

Mac电脑如何把照片以文件格式导出?

在Mac电脑上,我们经常会拍摄、保存和编辑各种照片。有时候,我们可能需要将这些照片以文件形式导出,以便与他人共享、打印或备份。无论您是要将照片发送给朋友、上传到社交媒体,还是保存到外部存储设备,导出照片为文件是…

Wlan——射频和天线基础知识

目录 射频的介绍 射频和Wifi 射频的相关基础概念 射频的传输 信号功率的单位 射频信号传输行为 天线的介绍 天线的分类 天线的基本原理 天线的参数 射频的介绍 射频和Wifi 什么是射频 从射频发射器产生一个变化的电流(交流电),通过…

Java后端开发需要学什么课程,能够帮助就业

Java后端开发需要学什么课程,学习内容对于想要在Java就业的同学来说非常重要。以下是一些关键的学习内容,可以帮助他们在Java领域获得就业机会: Java核心知识:掌握Java编程语言的基本语法、面向对象编程、异常处理、集合框架等核心…

[保研/考研机试] KY102 计算表达式 上海交通大学复试上机题 C++实现

描述 对于一个不存在括号的表达式进行计算 输入描述: 存在多组数据,每组数据一行,表达式不存在空格 输出描述: 输出结果 示例1 输入: 6/233*4输出: 18思路: ①设立运算符和运算数两个…