問題タブ [geometry]

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.

0 投票する
11 に答える
20071 参照

algorithm - 円と三角形の交点の面積を計算しますか?

三角形 (3 つの (X,Y) のペアとして指定) と円 (X,Y,R) の交差面積を計算するにはどうすればよいでしょうか? 私は無駄にいくつかの検索を行いました。これは学校ではなく仕事です。:)

C# では次のようになります。

0 投票する
7 に答える
5717 参照

geometry - 2つの線分を接続します

2つの2D線分AとBがある場合、AとBを接続する最短の2D線分Cの長さを計算するにはどうすればよいですか?

0 投票する
4 に答える
3207 参照

sql-server - 複数の隣接するポリゴンを一般化するにはどうすればよいですか?

Geometry タイプ フィールド (または Geography) を持つテーブルがある場合は、Reduce()関数を呼び出して形状の頂点数を減らすことができます。非常にうまく機能します。ただし、いくつかのポリゴンが隣接している (境界の一部を共有している) 場合、縮小されたポリゴンは必ずしも隣接しているとは限りません。

SQL バッチ:

これにより、2 セットのポリゴンが返されます。最初の縮小されていないセット:

代替テキスト

次に、削減されたセット:

代替テキスト

これらの形状ははるかに単純で、大まかな形状は正しいですが、私が望むのは境界部分を共有することです。したがって、ある意味で、それらをまとめて削減する必要があります。

最初に(エッジからエッジまで)ポリラインに分割し、次にラインを削減してから、再度ポリゴンに再構築する必要があると思います。ただし、T-SQLでこれを行う方法がわかりません。

何か案は?

編集: alphadaogg の回答を受け入れました。現在の両方の回答は、私にとって完全に説得力のあるものではありませんでしたが、alphadogg は確かに最大限の努力をしてくれました。それで、賞金は彼に行きます。

満足のいく方法が見つかったら、後で自己回答でフォローアップします。

フォローアップ: SqlServer Geo チームのプログラム マネージャーである Isaac Kunen に電子メールを送りました。彼の有益な応答は以下のとおりです。

あなたの問題はまったく珍しいものではありませんが、私たちが直接サポートするものではありません: これは、フィギュアのトポロジーの知識を必要とする操作であり、このようなものは組み込まれていません. 基本的に、あなたは望んでいません近隣ごとに個別のポリゴンを保存します。むしろ、境界の一部を表す曲線を保存し、これらの境界を複数のポリゴンに再利用する必要があります。ジェネラライズすると、共有境界がジェネラライズされ、依存するすべてのポリゴンが影響を受けます。

これを自分で作成することもできます---スレッドのポスターがヒントを引用しているように---しかし、そうするのは本当の努力かもしれません.

使用しているサードパーティ ソフトウェアはわかりませんが、これは別のオプションです。本格的な GIS が必要ない場合は、Safe Software ( http://www.safe.com ) の FME などのパッケージを使用できます。FME は汎用トポロジーを実行しませんが、探していることを実行するのに十分な機能を備えていると思います。http://www.safe.com/products/desktop/under-the-hood.php#3bを参照して ください。

これが役立つことを願っています。

乾杯、

-アイザック

0 投票する
11 に答える
15886 参照

algorithm - 球のボロノイ図を計算するアルゴリズム?

球面上の一連の点のボロノイ図を見つけるための単純な (存在する場合) アルゴリズムを探しています。ソースコードは素晴らしいでしょう。私は Delphi マニアですが (はい、知っています...)、C コードも食べます。

0 投票する
5 に答える
4799 参照

math - 有向距離の兆候を見つける方法.

3D 空間の有向線 AB に P と Q の 2 点があります。それらは行のどこにあっても構いません。つまり、必ずしも A と B の間にあるとは限りません。

ピタゴラスは明らかに距離を示しますが、P から Q への有向距離の符号はどのように計算すればよいでしょうか?

0 投票する
3 に答える
1254 参照

math - 任意の非長方形ボディのパスファインディング

球体、ピラミッド、メッシュで表されるその他のさまざまなオブジェクトなど、サーフェスが 3D で非長方形のさまざまなオブジェクトがあります。メッシュは、オブジェクトの表面全体に同じサイズと分布のポリゴンで構成されているわけではなく、円柱、球、円錐の理想的な形状のようなすべての半対称オブジェクトでもありません。

したがって、任意のメッシュを取り、さまざまな方法で自分自身をラップできるノードを生成する経路探索アルゴリズムを設計または改造するにはどうすればよいでしょうか?

0 投票する
27 に答える
521557 参照

geometry - How do you detect where two line segments intersect?

How do I determine whether or not two lines intersect, and if they do, at what x,y point?