0

turfJS の along() メソッドに問題があります。turfJS の座標に問題があるようです。

var alongLine = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "LineString",
    "coordinates": [
      [-37.86902659740041, 144.6185302734375],
      [-37.86902659740041, 145.57159423828125]
    ]
  }
};

var newPoint = Turf.along(alongLine, 1, 'miles');
console.log('Walked 1 miles', newPoint);

コードが実行された後、これは私が得るコンソールログです:

  Walked 1 miles { type: 'Feature',
geometry: { 
  type: 'Point',
  coordinates: [ -37.86902659740041, 35.367001095372345 ] },
  properties: {} 
}

ご覧のとおり、座標は -37 です。しかし、この線 (-37 と 145) に沿って 1 マイル歩くと、なぜこれが遠い地点なのか理解できません (線から地球の半分が離れているようなものです!)。

TurfJS のドキュメントでテスト座標を操作すると、正常に動作するように見えますが、私の座標では壊れています。どうすればいいの ?

ここにあるサンプルのドキュメント: http://turfjs.org/static/docs/module-turf_along.html

サンプル座標を使用する場合

[-77.031669, 38.878605],
[-77.029609, 38.881946],
...

結果は次のとおりです (2 ポイントのみを使用し、1 マイル未満を使用する場合でも、常に正しいポイントが返されます):

Walked 1 miles { type: 'Feature',
geometry: { 
  type: 'Point',
  coordinates: [ -77.02417351582903, 38.885335546214506 ] },
  properties: {} 
}
4

1 に答える 1

2

座標ペアの順序が間違っています。GeoJSON は[longitude, latitude]、座標ペアの順序を想定しています。

GeoJSON 仕様は次のとおりです: http://geojson.org/geojson-spec.html

座標ペアの順序付けに関する便利なリファレンスは次のとおりです: http://www.macwright.org/lonlat/

また、GeoJSON をすばやく視覚化するために使用できるサイトは次のとおりです: http://geojson.io/

于 2015-10-15T14:46:23.550 に答える