gpt4 book ai didi

javascript (node.js) 地理计算导致 NaN

转载 作者:行者123 更新时间:2023-12-02 19:07:37 24 4
gpt4 key购买 nike

我正在尝试使用 Node +地理东西来检索给定纬度、经度和半径的所有位置对于该计算,我正在尝试以下内容,但结果是 NaN。

类似的代码在 php、python 中工作正常,但无法弄清楚我在这里做错了什么。

引用:http://www.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL

PS 1:使用nodejs进行此计算,因为它需要在服务器端计算。PS 2:连变量名都像php变量,其实是js。

$cat file.js

var log =console.log;
var cos=Math.cos;
var sin=Math.sin;

function rad2deg(x){ log("rad2deg:", x,180*x/Math.pi);return (180*x/Math.pi);}
function deg2rad(x){ log("deg2rad:",x,x*Math.pi/180);return (x*Math.pi/180);}

function getNearPoint($lat,$lng,$rad){

console.log("Debug1",$lat,$lng);
$R = 6371; // earth's radius, km
// first-cut bounding box (in degrees)
$maxLat = $lat + rad2deg($rad/$R);
$minLat = $lat - rad2deg($rad/$R);
console.log("Debug2",$lat,$lng);
// compensate for degrees lnggitude getting smaller with increasing latitude
$maxlng = $lng + rad2deg($rad/$R/cos(deg2rad($lat)));
$minlng = $lng - rad2deg($rad/$R/cos(deg2rad($lat)));

console.log("Debug3",$lat,$lng);
// convert origin of filter circle to radians
$lat = deg2rad($lat);
$lng = deg2rad($lng);

console.log("Debug4",$lat,$lng);

//Build database query and do rest of the stuff
}

getNearPoint(19.1947659,72.8768400,50);

这是输出。

$ Node 文件.js

Debug1 19.1947659 72.87684
rad2deg: 0.007848061528802385 NaN
rad2deg: 0.007848061528802385 NaN
Debug2 19.1947659 72.87684
deg2rad: 19.1947659 NaN
rad2deg: NaN NaN
deg2rad: 19.1947659 NaN
rad2deg: NaN NaN
Debug3 19.1947659 72.87684
deg2rad: 19.1947659 NaN
deg2rad: 72.87684 NaN
Debug4 NaN NaN

最佳答案

没有像Math.pi这样的常量。您可能想使用 Math.PI (大写)。 :)

Math.pi未定义,因此最终只会返回 NaN

关于javascript (node.js) 地理计算导致 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14176451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com