NLCDデータを使用して、森林と非森林の7つの州があります。いくつかの森林地帯にはプロットがあります(これは私が取り組んでいる私の修士論文です)。私はこの大規模なデータセットで尋ねたすべての人を困らせましたが、そこに解決策があることは確かです。森林/非森林地域は、署名された離散的なラスタです。私は、森林地帯を部分集合化することによって森林地帯をポリゴンにすることができました。私は非森林地域をポリゴン(大きすぎる)にすることができません。だから、私は森林ポリゴンの端までポイント距離(ポイントはポリゴン内にあります)を取得しようとしていました。森林の端までの距離を得るための提案はありますか?ポリゴン内の点からポリゴンの端までの距離
答えて
これは実際には2つのことに依存します。具体的にどの辺をお望みですか?最も近い辺を探したいのですか、または辺を選択する他の基準(例えば、基准方向)がありますか?
最も近いエッジを見つけたい場合は、基本的に、ポリゴンで定義されているすべての線分を繰り返し、線分から点間の距離を計算します。これはあなたの距離を見つけるでしょう。 this質問には、Pythonのアルゴリズムの良い実装があります。そこにはアルゴリズムの良い説明がいくつかあります。
ポイントが外側のポリゴン内にあるかどうかわからない場合は、まずそれをテストします。次に、最も近い森のエッジまでの距離をテストするために、あなたはこのような何かを試みることができる:ここで
http://www.bdcc.co.uk/Gmaps/BdccGeo.js
Googleは「点からポリゴンのエッジまでの距離」の結果の富を持っている
をいくつかあります点から端までの距離を出力するコード、ポリゴンが凸であるかどうか、CCWかどうか。すべてのポリゴンのエッジをテストする必要があります。大きなエッジのセットでは少し遅いかもしれません。
- (double) distanceFromPoint:(yourPoint)testPoint
{
double pointX = edgePointB.x - edgePointA.x;
double pointY = edgePointB.y - edgePointA.y;
double k = pointX * pointX + pointY * pointY;
double u = ((testPoint.x - edgePointA.x) * pointX + (edgePointA.y - edgePointA.y) * pointY)/k;
if (u > 1)
u = 1;
else if (u < 0)
u = 0;
double x = edgePointA.x + (u * pointX);
double y = edgePointA.y + (u * pointY);
double dx = x - testPoint.x;
double dy = y - testPoint.y;
return sqrt((dx * dx) + (dy * dy));
}
完全に動作しますが、あなたはタイプミスをしました:u =((testPoint.x - edgePointA.x)* pointX +(* testPoint.y * - edgePointA.y)* pointY)/ k; – scippie
- 1. Pyproj点と点とポリゴン間の距離
- 2. 距離ポリゴン内のapi
- 3. ポイントからポリゴンまでの距離(内部の場合)
- 4. レイヤ内の1つのポリゴンから他のポリゴンまでの最小距離を見つけますか?
- 5. ポイントフィーチャから最近傍ポリゴンまでの距離R
- 6. PostGISのポリゴン間の直交距離
- 7. ポイントとポリゴンとの間の距離R
- 8. gis点とポリゴン/境界線の距離を計算する
- 9. 点のベクトルとポリゴンの間の最も近い距離を求めるR
- 10. ポリゴンから地理距離を計算する方法は?
- 11. ポリゴンの各辺の距離を2倍にするベクトル
- 12. ポリゴンの法線、ポリゴンの内側または外側の点を決定する
- 13. PostGISデータベース内の地理ポリゴンからの読み取り点
- 14. Openlayer2でポリゴンを追加して距離を計算したい
- 15. ポリゴンにならない点
- 16. ポリゴンの中のポリゴン
- 17. ポリゴン頂点の最小化
- 18. CGAL:セグメントとポリゴンの交点?
- 19. ポリゴンのアルゴリズムでポリゴンを扱うポリゴンを扱うポリゴン
- 20. ポリゴンから指定された距離だけラインに沿って点を見つける
- 21. 単一の点からの距離
- 22. ポリゴンのポリゴン3.5 tkinter
- 23. 2Dポリゴン内のポイント
- 24. Tensorflow - 行列内の点のユークリッド距離
- 25. ポリゴンのポイント、複数のポリゴン
- 26. ポリゴンの端に隙間を埋める
- 27. ジオフェンシングポイント内/外ポリゴン
- 28. 与えられた点から双曲線までの距離
- 29. 各文書内の2点間の距離とマイルフィールド未満の距離
- 30. nurbs曲線からその制御点までの距離
あなたが望むものについて少し正確にすることはできますか?あなたは平均距離、または最短距離をしたいですか?他に何か? – Breton
ポリゴンは凸ですか? – Dave
また、これを複数の点について計算するつもりです。 – Dave