GPS座標をAとします(経度 - 緯度の10進数形式で、次に半径30メートルの円(円)を作成して、 ?。このJavaScriptの例を見てみましょうおかげGPS座標を使用してゾーンを作成する方法
答えて
それを行う方法を、そのゾーンに入るが、それは他の言語で実装するのは簡単ですGPSのCOORD)
メインコード:
var earthRadiusKm = 3437.74677 * 1.1508 * 1.6093470878864446;
function GeoArea(centerLat, centerLng, distanceKm, northPoint, southPoint, eastPoint, westPoint) {
this.northPoint = northPoint;
this.southPoint = southPoint;
this.eastPoint = eastPoint;
this.westPoint = westPoint;
this.inArea = function (lat, lng) {
var inBox = southPoint.lat <= lat && lat <= northPoint.lat && westPoint.lng <= lng && lng <= eastPoint.lng;
if (inBox) {
var distanceFromCenterKm = calcDistance(centerLat, centerLng, lat, lng);
return distanceFromCenterKm <= distanceKm;
} else {
return false;
}
}
}
function GeoPoint(lat, lng) {
this.lat = lat;
this.lng = lng;
}
function toDegrees(radians) {
return radians/(Math.PI/180);
}
function toRadians(degrees) {
return Math.PI/180 * degrees;
}
function calcDistance(latA, lngA, latB, lngB) {
var rLatA = toRadians(latA);
var rLatB = toRadians(latB);
var rHalfDeltaLat = toRadians((latB - latA)/2);
var rHalfDeltaLng = toRadians((lngB - lngA)/2);
return 2 * earthRadiusKm * Math.asin(Math.sqrt(Math.pow(Math.sin(rHalfDeltaLat), 2) + Math.cos(rLatA) * Math.cos(rLatB) * Math.pow(Math.sin(rHalfDeltaLng), 2)));
}
function findPoint(lat, lng, bearing, distance) {
var rLat = toRadians(lat);
var rLng = toRadians(lng);
var rBearing = toRadians(bearing);
var rAngDist = distance/earthRadiusKm;
var rLatB = Math.asin(Math.sin(rLat) * Math.cos(rAngDist) + Math.cos(rLat) * Math.sin(rAngDist) * Math.cos(rBearing));
var rLngB = rLng + Math.atan2(Math.sin(rBearing) * Math.sin(rAngDist) * Math.cos(rLat), Math.cos(rAngDist) - Math.sin(rLat) * Math.sin(rLatB));
var pLat = toDegrees(rLatB);
var pLng = toDegrees(rLngB);
return new GeoPoint(pLat, pLng);
}
function calcArea(lat, lng, distanceKm) {
var northPoint = findPoint(lat, lng, 0, distanceKm);
var eastPoint = findPoint(lat, lng, 90, distanceKm);
var southPoint = findPoint(lat, lng, 180, distanceKm);
var westPoint = findPoint(lat, lng, 270, distanceKm);
return new GeoArea(lat, lng, distanceKm, northPoint, southPoint, eastPoint, westPoint);
}
使用例:
// calculate area with center in lat:55.742793 lng:37.615401
// and distance in 23 km
var area = calcArea(55.742793, 37.615401, 23);
//returns true
area.inArea(55.714735, 37.629547);
//returns false
area.inArea(55.693842, 38.015442);
よく見る - 私はそれを試してみてください - 非常にありがとう、それは30メートルで動作することを願って – user1379094
はい、それは動作します。このケースのdistanceKmパラメータは、0.030 –
になります。申し訳ありませんNikita、私は試みましたが、私は非常に多くのエラーがありました。このコードを開始する前に何を宣言する必要がありますか?どのJavaバージョンを使用しますか?助けてくれてありがとう – user1379094
- 1. GPS座標をGoogleマップに変換する方法座標
- 2. QuickTime GPS座標
- 3. クエリGPS座標
- 4. JSONを使用してサーバーにGPS座標を送信
- 5. Geojsonと座標テーブルを使用してポイントを作成する
- 6. テストデベロッパーのGPS座標
- 7. iPhone GPS座標アップロード
- 8. GPS座標精度
- 9. GPS座標を取得する方法3d
- 10. 正確なGPS座標を取得する方法Android LocationServices
- 11. gps座標からハウス/ブロック番号を決定する方法
- 12. Androidで毎分GPS座標を取得する方法は?
- 13. HealthKitからGPS座標を取得する方法
- 14. BroadcastReceiverクラスでGPS座標を取得する方法
- 15. DateTimeオブジェクトとGPS座標からTimezoneInfoを取得する方法
- 16. コーナー座標を使用してすべての内部座標のタプルを作成する
- 17. 正規表現を使用してGPS座標を検証する
- 18. Geopyを使用して住所のリストをGPS座標に変換する
- 19. オーシャンを使用してゾーンごとに属性を作成し、各ゾーンで値を設定する方法
- 20. plt.imshow()を使用して座標フレームワークを指定する方法
- 21. GPS座標を取得するWebサービス
- 22. ロケーションのGPS座標を取得する
- 23. GPSを取得する座標:Android
- 24. GPS座標を取得するAndroid Wear
- 25. GPS座標を移動する
- 26. GPS座標を収集する
- 27. RAILSのタイムゾーンに対してGPS座標を検証する方法
- 28. GPS座標から管理部門を生成しますか?
- 29. PhoneGapでgetCurrentPositionを使用して不正確なGPS座標を返す
- 30. GoogleマップAPIを使用して、ユーザーからの座標を促してパスを作成する方法
Huh?これはJavaScriptとどう関係していますか? –
私はそれを試してみて33のエラーを出しました - 助けてください助けてください – user1379094