問題タブ [jts]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java - より大きな地理的境界ボックスから始まる内部境界ボックスを生成します
大きな地理的バウンディング ボックスから始めて、内部バウンディング ボックス (1x1km の正方形など) を生成する方法が必要です。
たとえば、ロンドンの境界ボックスから始めて、その地理的領域内のすべての 1x1km の境界ボックスを取得したいと考えています。
フォーマット:
- 地理的境界ボックスは、地理的領域を区切る左下の点と右上の点の 2 つの点で表されます。
- ポイントは [緯度、経度] のペアで表されます。
その機能を実装した Java ライブラリや、単なるアルゴリズムはありますか? Java JTS も試しましたが、その目的には役に立たないようです。
前もって感謝します。
java - Geotools: wgs84 のバッファのバウンディング ボックス
バッファの周囲にバウンディング ボックス (四角形) を生成する Java 関数が必要です。バッファーは、中心点 (WGS84 座標) と半径 (メートル単位) によって定義されます。
JTS でバッファのバウンディング ボックスを取得するのは非常に簡単なようです。
ただし、これは純粋な平面ジオメトリです。距離がメートル単位の座標参照系を使用してこれを行う方法はありますか?
Geotools で最適ですが、他の Java ソリューションでも機能します...
java - ポリゴン上の線分の最適な始点と終点の決定
次の問題を解決する最善の方法を見つけるのに苦労しています。それらを解決する複数の方法を試しましたが、常にいくつかのコーナーケースに遭遇しています。
問題は次のとおりです。
- 閉じた多角形を形成する
List
座標 (x 点と y 点) があります。このリストは、点が時計回りに並べられた多角形を形成することが保証されています。 Set
上の座標からの座標 (x 点と y 点)が与えられますList
。- 上記のすべてのポイントを使用して形成される線の始点と終点を把握する必要があります
Set
。
私が抱えている問題は、「最適な」開始点と終了点を見つける方法がわからないことです。多くのシナリオでは、( のインデックスを使用してList
) 最初と最後のポイントを選択して開始点と終了点を形成できますが、必要以上に長い線になる可能性があります。
たとえば、次の多角形があるとします:
0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> 0
そして、Set
線分に含まれる必要がある次の座標: 0, 7, 3
.
最小インデックスと最大インデックスが見つかると、 が得られるのでindex(0)
、有効なラインであるindex(7)
ライン を形成できます0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7
が、必要以上に長くなります。最適な線分は です7 -> 0 -> 1 -> 2 -> 3
。
Set
最適な (すべての点を含む最短の) 線分を効率的に見つけるにはどうすればよいですか?
コンテキストについて: 私は、JTS ジオメトリを使用して形状を描画するアプリケーションに取り組んでいます。描画された形状は、ベジエ曲線を使用して平滑化され、「湾曲したエッジ」になります。(点をドロップして) 形状を描画した後、ユーザーは形状を編集できます。Set
影響を受ける領域のみを「滑らかにする」ことができるように、変更されたポイント (上記のフォーム) を使用して開始点と終了点を把握したいと考えています。
openlayers-3 - GeoJson から utfgrid タイルを作成するには?
ローカル マップ タイルがあり、ジオメトリもあります。(GeoJson はジオサーバーから取得します)。今、GeoJson ファイルから utfgrid を作成したいと考えています。私に役立つライブラリを探していましたが、良いライブラリが見つかりませんでした。
java - 指定された一連のウェイポイントまたはラインに対してポリゴンを描画しますか?
上の図は、geoLine (1 - 11) を示しています。各ポイントは地理座標です。
特定の geoLine に対して、上の画像のように Polygon (境界ボックス) を描画する必要があります。
これは、そのジオライン (パス / ウェイポイント) の近くにある駐車場、燃料、レストランなどの任意のポイント オブ インタレスト (POI) を見つけるためのものです (ジオラインの両側に 20 / 30 メートル。50 メートル以内)。
Elasticsearchには、ポリゴンポイントを指定できる機能があり、そのポリゴンの内側にあるものを提供すると思います。そのためには、上の図のようにポリゴンのすべてのポイントが必要です。
誰かがこれにアプローチする方法を教えてもらえますか? コードと一緒に説明すると役に立ちます。
ウェイポイント:
13.0489062,77.6037472
13.0493921,77.6028423
13.0494861,77.6017586
13.0491692,77.6010208
13.0482264,77.6010494
13.0472498,77.6010711
13.0461878,77.6011007
13.0454626,77.6010805
13.0446403,77.6011248
13.0438409,77.6010804
13.0438986,77.6017758
13.0438545,77.6030737
13.0439865,77.6040809
13.0439203,77.6056271
13.0438668,77.6066616
13.0436551,77.6077865
13.0434993,77.6088242
13.0432396,77.609767
13.0429808,77.6104908
13.0428103,77.6112412
13.0426729,77.6121114
13.0424444,77.6129859
13.0422521,77.6136721
13.0418346,77.6145997
13.0415062,77.6155134
13.0412306,77.6162379
13.0409749,77.6171142
13.0410531,77.6178208
13.0411159,77.618711
13.0411254,77.6195973
13.0410934,77.6203541
13.0412376,77.6215924
13.0412091,77.6223422
13.0410685,77.6234799
13.0404355,77.6241354
13.0398567,77.6245906
13.038993,77.6252223
13.0381411,77.6258873
編集:言語はJAVAです。
java - Is (JTS) ラインストリングがポリゴンに出入りしています
開始点によって定義された方向を持つlinestring
JTS (または一般的にはある種の開いたポリライン) がある場合、閉じたものとの交点で、がポリゴンに「入っている」polygon
か、それを出ているかを判断するスマートな方法はありますか?linestring
- JRS(ドキュメントで方法が見つかりません)では、線と閉じた形状が交差する座標のみ
intersection
- いくつかの一般的な賢い方法。私は現在、エッジ
linestring
の両側に沿って非常に短い距離でポイントpolygon
をテストし、どれが「イン」で、どれが「アウト」であるかをテストすることでそれを行いました。polygon
これは、(可能性が低い) 非常に鋭い内部エッジを持っている場合、おそらく間違った結果を返す可能性があります。
java - org.geotools.geometry.jts.GeometryBuilder はスレッドセーフですか?
GeoTools の GeometryBuilder ( org.geotools.geometry.jts.GeometryBuilder
) の JTS バリアントはスレッドセーフですか? 非 JTS GeometryBuilderはスレッドセーフではないことを示唆していますが、ドキュメントからは不明です。
ファクトリに対する「ビルダー」の主な利点は、スレッドセーフである必要がなく、作業を容易にするために状態を保持できることです。