首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取要发送到打印服务器或截取请求结果的范围和比例?

如何获取要发送到打印服务器或截取请求结果的范围和比例?
EN

Stack Overflow用户
提问于 2018-04-26 06:59:05
回答 1查看 137关注 0票数 0

我使用leaflet和esri-leaflet从专有的ArcGIS服务器创建地图。我正在尝试从打印服务器取回PDF。我有使用ESRI API 3.x的示例,但无法找到任何使用esri-leaflet的示例。

我知道打印服务器请求的格式,并且可以创建打印服务器请求,但需要mapOptions、spatialReference和scale的部分除外。我还知道,每次图像更改时,都会向地图服务器发送一个导出请求,该请求的响应包含我需要的信息。但是请求不是由我的代码生成的--它是作为事件的结果而发生的。

Esri-leaflet有一个事件请求成功,这似乎是我需要的。如果我可以拦截所有成功的请求,我就可以检查它是否是导出请求,并保存范围和规模(该范围嵌入了SR )。但是,我找不到任何示例,并且文档几乎没有给我提供如何继续进行的线索。

我并不执着于拦截请求,但似乎是获得我所需的最直接的方法。我知道我可以从leaflet获得边界并转换为范围,但获得比例更难(必须获得缩放级别并有相应的映射)。因此,这可能是另一种选择。

EN

回答 1

Stack Overflow用户

发布于 2018-04-27 07:55:24

Esri leaflet包含一种便捷的实用程序方法,可将Leaflet边界对象转换为Esri范围对象文字

代码语言:javascript
复制
// http://esri.github.io/esri-leaflet/api-reference/util.html
L.esri.Util.boundsToExtent(map.getBounds())

要得到比例,你只需要在当前的缩放级别上做一些数学运算。

代码语言:javascript
复制
// https://gis.stackexchange.com/a/81390/21012
591657550.500000 / Math.pow(2, map.getZoom() - 1)

现场演示:http://jsbin.com/ceceqir/edit?html,output

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50032488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档