You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Mapbox GL JS中获取带俯仰角3D地图的相机经纬度位置?

获取3D地图相机的经纬度位置

在3D地图场景中,map.getCenter()仅返回地图的焦点中心点,和带俯仰角时相机的实际观测位置是两个不同概念。以下是主流地图API获取相机经纬度的具体实现:

Google Maps JavaScript API

调用map.getCamera()获取相机实例,其中position属性对应相机的经纬度坐标:

const camera = map.getCamera();
const cameraLatLng = camera.position;
// 打印相机经纬度
console.log("相机纬度:", cameraLatLng.lat());
console.log("相机经度:", cameraLatLng.lng());

高德地图JS API(v2/v3版本)

使用map.getCameraPosition()方法获取相机位置对象,lnglat字段即为相机的经纬度:

const cameraPos = map.getCameraPosition();
const cameraLngLat = cameraPos.lnglat;
console.log("相机经纬度:", cameraLngLat.getLng(), cameraLngLat.getLat());

百度地图JS API

通过地图视图的getPosition()方法直接获取相机经纬度:

const cameraPosition = map.getView().getPosition();
console.log("相机经度:", cameraPosition.lng);
console.log("相机纬度:", cameraPosition.lat);

核心说明:3D地图的相机是独立于地图中心点的观测实体,所有成熟的地图API都会提供专门的相机位置查询接口,无需依赖中心点方法推导。

内容的提问来源于stack exchange,提问作者aaaatttt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 14:55:20