[OSGeoJapan-discuss] ポリゴン処理の話題
Hiroshi Miura(@osmf)
miurahr @ osmf.jp
2013年 9月 15日 (日) 17:44:27 PDT
嘉山さん、山手さん
ありがとうございます。
凸多角形かどうかを確認するだけならば、 世の中にアルゴリズムが有るという事で、
ライブラリを改めて確認して見ました。
CGALに、 is_convex() というそのものの関数が、有りました。
添付パッチのようにdebugmodeを追加してやってみたところ、大丈夫そうです。
お題:2013年9月15日 12:43 Hiroshi Miura(@osmf) <miurahr @ osmf.jp>:
>> このような問題は、計算幾何学で研究されていて、素晴らしいライブラリがすでに提供されています。
>> そこで、CGALを用いて、ポリゴンを複数の多角形に変換し、LUAのプログラムを生成するようなユーティリティプログラム
>> (*9)を書くことにしました。(GEOSには、該当機能がないみたいでした)
>>
>> $ utils/poly2lua/poly2lua -t
>>
>> ここで(-t)をつけると、テストモードで、内蔵の日本の定義データを元に、複数の多角形(緯度経度)を示すデータを生成します。
>> また、osm/data/*.kml が元データで、 osm/data/*.luaが生成された複数の凸多角形のデータです。
>>
>> ☆ で、ここで質問ですが、どうやったら、この生成されたデータが正しく凸多角形であることがわかるでしょうか?
On 2013年09月15日 19:21, 山手 規裕 wrote:
> 凸多角形かどうかを確認するだけでしたら、多角形の頂点を順に並べて、
> 全ての隣接する3点が同じ回り順(時計回りか反時計回り)であればいいのではないでしょうか。
>
> On 2013/09/15, at 17:54, Yoichi Kayama wrote:
>
>> 以下のようなコードがありましたが、こういうことなのでしょうか?
>>
>> http://www.prefield.com/algorithm/geometry/isconvex.html
>>
三浦
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: check_convex.diff
型: text/x-patch
サイズ: 1743 バイト
説明: 無し
URL: <http://lists.osgeo.org/pipermail/osgeojapan-discuss/attachments/20130916/461e81c8/attachment-0001.bin>
More information about the OSGeoJapan-discuss
mailing list