我有一个表格,可以在表格中输入DMS格式的位置坐标。我可以使用http://itouchmap.com/latlong.html将标记拖到所需的位置来找到坐标
度数,分钟和秒数用空格隔开,而不是通常的符号。
例子:
这些值存储在varchar字段中,并按原样存储。
有人可以告诉我问题是什么吗?
但是,当我检索这些坐标以将其绘制在Google地图上时,标记位于其他位置。
PS:当坐标以DDD格式存储时,标记放置效果最佳。
我使用的代码是从https://developers.google.com/maps/articles/phpsqlajax_v3?csw=1复制粘贴的
文章规定,长和迟应存储为小数(10,6)类型,以允许小数点前四位和小数点后六位。maps api将无法可靠地接受任何其他格式的这些坐标。
在存储到表中然后读出到地图之前,您必须处理从分钟分秒到十进制的转换。
建议阅读:如何在度,分,秒之间转换为十进制坐标
http://transition.fcc.gov/mb/audio/bickel/DDDMMSS-decimal.html
编辑请参阅此处的链接。Google Maps API不支持DMS,除非以非常特定的方式实现(在这种情况下,您需要自己格式化字符串,并且可以简单地转换?选择)。
问题在于API期望经度和纬度为整数,因此不接受空格。
如果我是对的(在javascript中),则对小数的对话将像这样简单:
var = hour+(((minute*60)+(second))/3600);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句