相关疑难解决方法(0)

Google Maps V3 - 如何计算给定边界的缩放级别

我正在寻找一种使用Google Maps V3 API计算给定边界的缩放级别的方法,类似于getBoundsZoomLevel()V2 API.

这是我想要做的:

// These are exact bounds previously captured from the map object
var sw = new google.maps.LatLng(42.763479, -84.338918);
var ne = new google.maps.LatLng(42.679488, -84.524313);
var bounds = new google.maps.LatLngBounds(sw, ne);
var zoom = // do some magic to calculate the zoom level

// Set the map to these exact bounds
map.setCenter(bounds.getCenter());
map.setZoom(zoom);

// NOTE: fitBounds() will not work
Run Code Online (Sandbox Code Playgroud)

不幸的是,我无法将该fitBounds()方法用于我的特定用例.它适用于在地图上拟合标记,但它不适用于设置精确边界.这是我不能使用该fitBounds()方法的一个例子.

map.fitBounds(map.getBounds()); // not what you expect
Run Code Online (Sandbox Code Playgroud)

google-maps google-maps-api-3

130
推荐指数
6
解决办法
15万
查看次数

Android用轴承映射V2 newLatLngBounds

我正在使用这个布局的新Android地图V2:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:map="http://schemas.android.com/apk/res-auto"
  android:id="@+id/map"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  class="com.google.android.gms.maps.SupportMapFragment"
  map:cameraBearing="270"/>
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用newLatLngBounds(LatLngBounds bounds,int padding)方法来缩放和查看地图中的所有标记,但摄像机方位设置为0.

谷歌开发者文档中的描述说:

public static CameraUpdate newLatLngBounds(LatLngBounds bounds,int padding)(...).返回的CameraUpdate的轴承为0,倾斜度为0.(...)".

如何更改轴承值?

在调用newLatLngBounds之后,我尝试以编程方式设置新轴承,如下所示:

mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(bounds, 100));
mMap.moveCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition.Builder()
.target(mMap.getCameraPosition().target)
.zoom(mMap.getCameraPosition().zoom)
.bearing(270)
.build()));
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,一些标记将不会显示出来.

android android-maps-v2

18
推荐指数
3
解决办法
1万
查看次数

MapKit.js 中的缩放和位置管理

我使用 MapKit.js 创建了以下地图,其中包含数百个自定义注释、聚类(黄点)和单击注释时弹出的标注。

当单击弹出链接时,我想要做的只是放大一步并在单击的注释上居中视图(在响应式上下文中)。

MapKit.js 地图

在我习惯的谷歌地图中,​​您只需通过地图的中心和缩放级别来定位地图即可。

在 MapKit.js 中,您使用中心/区域组合,老实说我无法理解它是如何工作的。

我不清楚官方文档,而且我无法找到真正有启发性的资源。

如果有人可以向我解释我们应该如何使用中心/区域组合来管理缩放级别,我将非常感激。

谢谢 :-)

[编辑]

这个中心/区域的事情对我来说仍然没有意义,所以我决定用缩放功能覆盖 MapKit.js。

感谢这篇文章,我成功地实现了缩放计算,这似乎没问题。

我现在需要实现设置的缩放操作。
还没有成功,这个数学的事情到现在为止^^

非常欢迎任何帮助:-)

功能:

function MapKitJsZoom(map) {
    var LN2 = 0.6931471805599453; // ???
    var WH = 256; // World Height
    var WW = 256; // World Width
    var MAX = 21; // Max zoom level

    // GET CURRENT ZOOM.

    var latToRad = function (lat) {
        var sin = Math.sin(lat * Math.PI / 180);
        var radX2 = Math.log((1 + sin) / (1 - …
Run Code Online (Sandbox Code Playgroud)

javascript mapkit

5
推荐指数
1
解决办法
2515
查看次数