问题标签 [proj4js]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何在 OpenLayers 中设置默认视图,而不限制边界?
根据示例,我可以看到您可以通过以下方式在 OpenLayers 中设置默认视图:
但是,这也(顾名思义)限制了我只能在这些范围内导航。我可以缩小并查看这些边界之外的东西,但我不能再放大它们或滚动到它们。
我试过没有任何限制范围(或使其成为整个地图),但我无法让它专注于我想要的区域。我尝试使用:
设置缩放和中心......但它似乎没有做任何事情,除了设置我可以从 map.getCenter() 读取的变量“中心”(如果我不设置它,它是空的,如果我设置它,我可以看到它......但地图本身保持完全扩展,它的中心似乎根本没有改变......)
我使用的地图图层是:
将 displayOutsideMaxExtent 设置为 true ......我真的很茫然。
我的目标是让世界的默认区域放大并显示在视图中(例如美国),观众可以选择在默认区域之外查看事物。
gis - postgis / proj 900913 到 Y 坐标的 4326 投影问题
这是一个老歌,但我似乎找不到解决方案。
当我想对 900913 坐标到 4326 系统进行 st_transform 时,y 坐标会发生变化。
例子:
SELECT AsText(变换(变换(GeomFromText('POINT(449760.25168159 6790560.4594059)',900913),4326),900913))这里原来的 900913 声明点是 st_stransformed 到 4326 并返回到 900913。结果不是原来的点,y 不同。(我稍后会插入结果,我这里没有)。
我尝试将 proj4text 更改为 4326,添加 +nadgrids=@null 就像我在某处读到的一样
srid 4326 的 proj4text 目前是:
"从 srid=4326 的 spatial_ref_sys 中选择 proj4text" +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defssrid 900913 的 proj4text 当前为:
"从 srid=900913 的 spatial_ref_sys 中选择 proj4text" +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@空 +no_defs我还尝试从 900913 投影到另一个投影到 4326,但我得到的点与从 900913 到 4326 的直接转换完全相同。
有人有什么想法吗?
EJ
kml - Google Earth (/Sky) 中的正交投影可能吗?备择方案?
我需要创建全天地图,但天空模式下的 Google 地球限制了“缩小”。是否可以使用 Google 地球(或者,就此而言,MS Virtual Earth)创建正交地图投影?任何标准预测都可以,尽管有选择会很好。
当然,我可以静态渲染投影,然后在其上绘制我的 KML 图层,但理想的用例将允许用户添加额外的 KML 图层、放大和缩小等。
javascript - 将地理坐标 (lat, lng) 映射到地图 (x, y)
我有一些城市的地理坐标(纬度和经度),想获得 x,y 坐标,以便将它们绘制成地图。
该地图是标准地图,例如http://www.wordtravels.com/images/map/Spain/Fuerteventura_map.jpg。
我尝试了几个我发现的公式,但似乎没有一个真正有效:(。简单的 javascript 代码或 ruby 会是最好的:)
oracle - 坐标转换
我正在使用 OpenLayers、Google Maps 和另一个专有资源来处理一个用于在地图上显示多边形的 Web 门户的小组件。
用户在 PSAD56 (UTM) 基准中有点,我需要将其更改为 WGS84 才能与 Google 地图一起使用。我手头有没有空间扩展的 Oracle 9i 和 postgis。Oracle 定位器或 Postgis 可以进行这种转换吗?或者有没有开源可以做到这一点?
javascript - 使用 proj4js 转换坐标时的精度错误
我正在使用库 Proj4js 来转换坐标。我正在将坐标从 EPSG: 23029 转换为 EPSG: 4326。问题是通过转换坐标与处理负载中使用的精度存在一些偏差。我通过将坐标系从原点转换到目的地来注意到这一点,反之亦然。我用来进行转换的代码是:
当我在两个方向上进行转换时,原点不一样。
有谁知道如何解决这个问题?
谢谢。
javascript - javascript proj4js 问题
您好,我在使用 proj4js 库时遇到问题。这是我的来源:
我不明白为什么只有当我单击按钮两次时重新投影才有效,当我第一次单击它时,会返回相同的值。它似乎仅在我单击按钮两次或更多次时才有效。这是这个在线页面: 点击
javascript - 用于绘制 MGRS 的叠加层
我正在尝试使用 OpenLayers (JavaScript) 在叠加层中的地图上绘制 MGRS 线。我真正遇到问题的地方是识别奇怪的正方形(非 100kmx100km 网格)。有谁知道我在哪里可以找到绘制这些的算法?
特别是,我拥有或可以找到的信息是: 将 Lat/Long 转换为 MGRS 将完整的 MGRS 字符串(即 17SLA123678 但不是 17SLA)转换为 Lat/Lon 将 Lat/Lon 转换为屏幕像素,反之亦然
谢谢!
transform - 如何将距离从度转换为米?
我正在使用带有普通墨卡托地图的 OpenLayers,我试图通过在 latlong 中找到一个点网格来对边界框进行采样。bbox 用 latlon 表示,例如
我可以以度为单位定义距离(例如x:2.5,y:2.4)并从那里计算出点。但是我想用米来表示这个距离(例如 50000),以便将它与用户的心态联系起来(人们理解米,而不是度数)。我怎样才能转换这个距离?我知道如何重新投影一个点,但不是一个距离。
感谢您的任何提示!穆龙
javascript - 使用 api 帮助在谷歌地图上绘制坐标
我从外部数据库中获得了这两个坐标 x 和 y。
X = 30490, y = 31430
试图弄清楚如何将这些坐标绘制到谷歌地图上?由于谷歌地图只接受纬度和经度值...
任何帮助都非常感谢!谢谢...