相关疑难解决方法(0)

小册子在缩放级别计算每像素的米数

我正在尝试确定一种方法来计算在给定缩放级别1个像素表示的米数和Leaflet中的地理中心点.任何人都可以指导我参与数学计算,或者是否有办法在传单中开箱即用?我在那里找不到太多东西.

javascript geo leaflet

9
推荐指数
2
解决办法
8965
查看次数

将小叶标记放在圆周上的参数方程不精确?

我正在开发一个应用程序,我有一个圆心和半径,我在Leaflet的帮助下绘制圆圈.

我在圆周的最北端放置了一个标记,使其可以拖动.

var circle = L.circle(coords, radius).addTo(map);

convertRadiusToLatitude = parseInt(response.radius)/111111;

var coordsOnRadius = [parseFloat(response.lat) + convertRadiusToLatitude, parseFloat(response.long)];
var markerOnRadius = L.marker(coordsOnRadius, {draggable: true}).addTo(map);
Run Code Online (Sandbox Code Playgroud)

现在,这将标记添加到圆周,现在我希望它只能在我使用参数方程的圆周上拖动.

参数方程

x = Xc + R * cos(theta)
y = Yc + R * sin(theta)
Run Code Online (Sandbox Code Playgroud)

拖动代码

markerOnRadius.on('drag', function(e){

    bearing = marker.getLatLng().bearingTo(markerOnRadius.getLatLng());

    var markerOnRadiusX = parseFloat(response.lat)  + ((0.000009 * parseFloat(response.radius)) * Math.cos( toRad(bearing) ));
    var markerOnRadiusY = parseFloat(response.long) + ((0.000009 * parseFloat(response.radius)) * Math.sin( toRad(bearing) ));

    markerOnRadius.setLatLng([markerOnRadiusX, markerOnRadiusY]);
});
Run Code Online (Sandbox Code Playgroud)

bearingTo方法:

L.LatLng.prototype.bearingTo = function(other) {
    var …
Run Code Online (Sandbox Code Playgroud)

javascript algorithm math leaflet mapbox

7
推荐指数
1
解决办法
924
查看次数

标签 统计

javascript ×2

leaflet ×2

algorithm ×1

geo ×1

mapbox ×1

math ×1