谷歌地图区域突出显示和适当的缩放“近似”区域
Google map area highlighting and appropriate zoom for "APPROXIMATE" areas
有没有办法做到这一点,以便在使用谷歌地图 API 并搜索类型为"APPROXE"的位置时,它会自动缩小并以红色突出显示大致区域 - 确切地说,它将如何在谷歌上工作 - 使用谷歌地图 API v3? https://i.stack.imgur.com/9vHS7.png
现在在我的网站上,当您搜索澳大利亚时,它会将查询到北领地,并且只是将地图集中在一个随机点上。我正在获取用户输入的地址并转换为纬度/液化天然气,然后将其发送到谷歌地图 api。(截图:https://i.stack.imgur.com/uQvAR.png)请告知是否有其他方法,谢谢。
我像这样声明地图画布:
map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(<?php echo $geo_latitude; ?>, <?php echo $geo_longitude; ?>),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP,
scrollwheel: false,
<?php echo(isMobile()) ? 'draggable: false' : ''; ?>
});
这是将用户写入的位置地址解析为纬度/经度的函数。
// convert address to lat/long
function get_lat_long($address){
$address = str_replace(" ", "+", $address);
$json = file_get_contents("http://maps.google.com/maps/api/geocode/json?address=$address&sensor=false®ion=$region");
$json = json_decode($json);
$lat = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lat'};
$long = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lng'};
$types = $json->{'results'}[0]->{'types'};
$location_type = $json->{'results'}[0]->{'geometry'}->{'location_type'};
if ( $types[0] == 'administrative_area_level_1' && $types[1] == 'political') {
$types = "STATE";
} elseif ( $types[0] == 'country' && $types[1] == 'political' ) {
$types = "COUNTRY";
} else {
$types = "OTHER";
}
return $lat.','.$long.','.$types.','.$location_type;
}
如果您使用 Google Maps Javascript API v3 Geocoder,它可以在结果中包含视口和/或边界属性,允许您缩放地图,使其边界完全包含结果。
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
if (results[0].geometry.viewport)
map.fitBounds(results[0].geometry.viewport);
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
相关文章:
- 更改高贴图的缩放级别
- 在不阻止默认行为的情况下检测IE10中的缩放
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 缩放Raphael/SVG容器以适应所有内容
- 传单缩放控制位置错误
- 谷歌地图区域突出显示和适当的缩放“近似”区域
- 从 C# 代码隐藏设置传单缩放区域
- Oracle APEX - 如何在打印时缩放区域以适应单个页面
- 获取"可见”;缩放后的视口区域
- 将图像悬停并在画布元素中显示光标周围区域的缩放版本
- JavaScript缩放图像和中心可视区域
- 限制可视区域和缩放级别
- 缩放或缩放从gps获得的X/Y像素以适合特定区域
- 如何使用多个地图指针制作谷歌地图,以在打开页面时缩放特定区域/位置
- D3.js图表调用并在缩放后重新绘制区域
- 缩放控件与谷歌地图区域中的自定义控件重叠
- 图像映射区域突出显示和使用 iScroll 4 缩放
- 限制缩放/可视区域与谷歌地球API
- 在分组条形图中缩放时如何剪切矩形外的区域
- 在d3.js中缩放选定的矩形区域