我有莫斯科的城市地图.我们使用一些艺术元素修改了Google地图图像,但GPS坐标和像素之间的关系保持不变.
问题:如何将GPS坐标从我们拥有的各种数据点转换为图像中的像素坐标?
理想情况下,我可以在Javascript中执行此操作,但PHP可以.
我知道在小尺度上(例如在城市尺度上)它可以做得足够简单(有必要了解哪个地理坐标有一个图像角点,然后在轴上的图片上学习地理坐标中一个像素的"价格" OX和OY分开).
但是在大尺度(国家规模)上,一个像素的"价格"将不是常数,并且将足够强烈地变化并且不能应用上述方法.
如何解决国家规模的问题?
更新:
我不使用API谷歌地图,我只有:对象的地理坐标(它们来自谷歌地图),我仍然在我的网站上有一个简单的图片*.gif,我必须在其中绘制一个相应的地理坐标点.
如何在谷歌静态地图上有自定义图像标记,我需要网址格式:
我在项目列表中有迷你地图生成的地方.地图上应该有2个点,并且这两个点之间有彩色的道路方向.
它应该看起来像这样:
这应该是静态图像,因为页面上会有许多不同方向的图片.但正如我所见,谷歌静态地图不允许绘制这样的图像.两点之间只能有直线,如下所示:
但我需要指导......
我决定使用静态地图,因为在我的Web应用程序中,我收到了这两个点的坐标,如果我使用静态地图,很容易将它作为变量放在我的PHP模板中.但是有可能以同样的方式接收静态图像的方向吗?
我找到了很少的JavaScript API解决方案,但没有找到如何绘制静态图像,因为我需要...
我有153个标记,需要用它们生成一个静态地图,但是当把它们放在网址中时,我得到一个如下错误:
414 Request-Uri Too Large
Run Code Online (Sandbox Code Playgroud)
我的网址是这样的
"http://maps.google.com/maps/api/staticmap?center=13.00,-85.00&size=600x500&maptype=roadmap&markers=13.305,-86.18636&markers=13.72326,-86.13705&......"
Run Code Online (Sandbox Code Playgroud)
谢谢大家!
javascript django google-maps google-maps-api-3 google-maps-static-api
我在v3 api上绘制了一个Google Maps Circle.当用户绘制圆(或多边形,如果他们选择),他们可以将数据保存到服务器.如果用户选择了径向搜索,则中心坐标和以英尺为单位的半径将存储到数据库中.这意味着当用户重新加载他的搜索时,它可以再次通过圆圈(如下所示).

然而,我遇到了一个问题,即当用户选择他们想要使用的搜索时.如果它们绘制了一个多边形,它会加载多边形,如果它是一个圆形,它会拉过中心的标记.然而我需要的是静态地图中的一个函数来绘制一个圆.
我已经构建了一个工具,允许人们将JSON地图样式应用于Google Map,现在我想添加对Google Static Maps API的支持.
使用以下样式数组:
"[{"stylers":[]},{"featureType":"water","stylers":[{"color":"#d2dce6"}]},{"featureType":"administrative.country","elementType":"geometry","stylers":[{"weight":1},{"color":"#d5858f"}]},{"featureType":"administrative.country","elementType":"labels.text.fill","stylers":[{"color":"#555555"}]},{"featureType":"administrative","elementType":"geometry.stroke","stylers":[{"visibility":"off"}]},{"featureType":"administrative.country","stylers":[{"visibility":"on"}]},{"featureType":"road.highway","stylers":[{"saturation":-100},{"lightness":40},{"visibility":"simplified"}]},{"featureType":"road.arterial","stylers":[{"saturation":-100},{"lightness":40},{"visibility":"simplified"}]},{"featureType":"road.local","stylers":[{"saturation":-100},{"visibility":"simplified"}]},{"featureType":"landscape","elementType":"all","stylers":[{"hue":"#FFFFFF"},{"saturation":-100},{"lightness":100}]},{"featureType":"landscape.natural","elementType":"geometry","stylers":[{"saturation":-100}]},{"featureType":"landscape.man_made","elementType":"geometry.fill","stylers":[{"visibility":"simplified"},{"saturation":-100}]},{"featureType":"poi.park","elementType":"geometry","stylers":[{"saturation":-100},{"lightness":60}]},{"featureType":"poi","elementType":"geometry","stylers":[{"hue":"#FFFFFF"},{"saturation":-100},{"lightness":100},{"visibility":"off"}]}]"
我需要最终将其转换为URLescaped字符串,格式为:( style=feature:featureArgument|element:elementArgument|rule1:rule1Argument|rule2:rule2Argument 更多文档)
到目前为止,我已经编写了这个JavaScript来尝试转换内容,但它无法正常工作:
function get_static_style(styles) {
var result = '';
styles.forEach(function(v, i, a){
if (v.stylers.length > 0) { // Needs to have a style rule to be valid.
result += (v.hasOwnProperty('featureType') ? 'feature:' + v.featureType : 'feature:all') + '|';
result += (v.hasOwnProperty('elementType') ? 'element:' + v.elementType : 'element:all') + '|';
v.stylers.forEach(function(val, i, a){
var propertyname = Object.keys(val)[0];
var propertyval = new String(val[propertyname]).replace('#', '0x');
result += propertyname + ':' + …Run Code Online (Sandbox Code Playgroud) javascript google-maps google-maps-api-3 google-maps-static-api
是否可以在静态Google地图图像上放置(比如说1000个)标记(使用一组LAT-LONG值)?此外,是否有某种HTTP POST方法来实现这一点或URL是唯一的方法去?
基本上,我正在研究Bing地图REST服务 - Imagery和我发现最多100个图钉(标记)可以放在Bing地图上.
我想生成带有无限标记/图钉的静态地图.Google或Bing并不重要.
像这样:http://msdn.microsoft.com/en-us/library/ff701724.aspx#code-snippet-19
我真正想要做的是允许用户使用谷歌地图创建地图并保存图像.我试图通过使用谷歌地图api V3和静态地图api来解决这个问题.
用户可以使用动态谷歌地图滚动,缩放等,并找到他们喜欢的地图.然后,用户应按下一个按钮,该按钮从谷歌地图(中心,缩放级别等)中提取数据,该数据将查询发送到静态谷歌地图API.静态谷歌地图api将返回可以保存的图像.
我有这个全部工作*除了它并不总是有效.有时,静态谷歌地图返回的图像将完全是用户在动态地图中看到的图像.其他时候图像可能会偏离几米(我相信这是因为动态谷歌地图api使用比静态api更高的经度和纬度精度),甚至数千公里(我不知道为什么会发生这种情况).图像通常在缩放级别越大(因为精度差异).
我想知道是否有人尝试将动态地图转换为静态地图,并想出了一个非错误的解决方案,或者是否有更好的解决方案可行.
javascript google-maps google-maps-api-3 google-maps-static-api
如何在JavaScript中生成有效签名,我有一个业务密钥和客户端ID,但无法继续静态地图api有效url签名,因为我使用JavaScript调用此API并希望发送签名和客户端ID以满利用我的使用限制.