【发布时间】:2021-09-28 14:16:28
【问题描述】:
我的 MySQL 数据库中存储了一串坐标,我无法在 Google 地图中显示,因为它需要是一个 LatLng 对象:
'(55.46701996570562, 11.983202375732418),(55.46604683879285, 11.982086576782223),(55.465316977846335, 11.983803190551754),(55.465900867684354, 11.985863127075191)'
我知道我可以将这些坐标存储为 POLYGON 数据类型,但由于其他一些原因我不想这样做(这里不提它们)。
当尝试在下面的代码中使用该坐标字符串时,它会显示错误:
const polygon_coords = '(55.46701996570562, 11.983202375732418),(55.46604683879285, 11.982086576782223),(55.465316977846335, 11.983803190551754),(55.465900867684354, 11.985863127075191)';
const coords = new google.maps.Polygon({
paths: polygon_coords,
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: "#FF0000",
fillOpacity: 0.35,
editable: true
});
错误:
InvalidValueError:在索引 0:不是 LatLng 或具有有限坐标的 LatLngLiteral:不是 Object
知道如何将该坐标字符串转换为 Google 可识别的格式,例如 LatLng 或 LatLngLiteral 吗?
【问题讨论】:
-
数字的顺序是什么?
(lat, lng)还是(lng, lat)?或者,多边形在哪里? -
@geocodezip 它是 (lat, lng)。他们在丹麦
标签: javascript google-maps google-maps-api-3 polygon