我想使用go.js和leaflet.js在地图上显示几何对象 几何对象坚持其地理位置对我来说很重要。我只是将像素坐标转换为lat / lng地理坐标。
但是,对于某些几何对象来说,获取所有必需的地理坐标并不容易。 对于多边形,我得到一个SVG-Path字符串,如:
"F M54 77 L39 128 L0 146 L18 178 L45 215 L87 220 L79 321 L79 400 L153 371 L246 340 L296 325 L332 255 L324 207 L355 164 L338 138 L368 105 L380 23 L336 0 L282 35 L222 10 L147 10 L95 38 L60 44z"
以及中间点的像素坐标。
所以我需要每个角点的像素坐标。 您是否有任何想法或建议如何将SVG路径转换为其像素坐标?
希望你们能帮帮我。
祝你好运!
答案 0 :(得分:1)
你有一个GoJS Part
(或Node
),其中Shape
的{{3}}就是你发布的内容吗?
如果有,我建议您查看Shape.geometry
并查看其Shape.geometryString
' Geometry.figures
和他们的PathFigure
s。对于每个点,您可以通过添加Part.position
加上Shape.strokeWidth
的一半来转换为GoJS文档坐标。然后,您可以通过调用Leaflet map的containerPointToLatLng
方法将文档坐标转换为LatLng。