忍者ブログ
  • 2025.05
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 2025.07
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【2025/06/08 15:28 】 |
平面図形の三角形分割(条件付き)
問題
平面上に3つ以上の点が存在する。(ただし、全ての点が一直線に並んでいるような場合は考えない)
以下の条件を満たす三角形の集合を考える。
条件1:全ての三角形は、与えられた点のうち3つを頂点とする。
条件2:全ての点は、必ず1つ以上の三角形の頂点となる。
条件3:三角形全体の和は与えられた点の凸包に等しく、互いに辺や頂点以外では重ならない。
条件4:全ての三角形の外接円は、頂点となる3点以外の点を含まない。

条件を満たす三角形の集合は必ず存在するか?
存在する場合、それは一意な集合か?
その三角形の集合を求める具体的な手続きは存在するか?



この問題、とあるツールの一部機能として実装されていて、
つまりツールの製作者が言うには
「具体的な手続きが存在する、それに従えば三角形の集合は必ず見つかる」
ということになるんだろうなぁと。
ただその処理が入力の点の数の4乗オーダーの処理がかかっていて
結構重いんですよそのツールw

某所でそんな話題になったので、具体的な手続きはともかく
三角形の集合の存在について証明でも書こうかと。




途中。今は概要だけ。
補題はちょっとちゃんと証明しないといけない気がする((2)あたり必要だったのでイメージだけで追加した

補題
平面上にABCDの4点をとるとき、以下の3つは同値。
1)△ABCの外接円(半径R_1)にDが含まれる
2)△BCDの外接円(半径R_2)にAが含まれる
3)△ABDの外接円(半径r_1)、△ACDの外接円(半径r_2)としたとき、
  r1<R1、r1<R2、r2<R1、r2<R2


与えられた点の凸包を、条件1~3を満たすように三角形に分割する。
以下の操作を繰り返す。
A)「集合に△ABCと△BCDが存在し、△ABCの外接円にDが含まれる」ような△ABC、△BCDをとる。
B)集合から△ABCと△BCDを取り除き、かわりに△ABDと△ACDを追加する。

・Bの操作を行っても、問題の条件1~3の成立可否は変化しない。
・Bの操作を行うたびに、補題により「三角形の外接円半径の総和」は小さくなる。
・「三角形の外接円半径の総和」は三角形の集合のとりかたによって決まり、
 その集合のとりかたの総数は有限である。
 よってBの操作を無限に続けることはできず(無限降下法)、この操作は有限で停止する。
・停止するとはAの条件を満たす△ABC、△BCDを取れなくなった時であり、つまり問題の条件4を満たした時である。
PR
【2014/08/25 21:00 】 | 仕事、技術 | 有り難いご意見(1)
<<日本測地系から世界測地系に変換 | ホーム | Excel 配列関数>>
有り難いご意見
無題
知人から
「正方形の形に点が存在すると、分割を一意に決めることは不可能だ」と指摘を受けた。
【2014/10/20 17:59】| | BFS #5d07b134cc [ 編集 ]


貴重なご意見の投稿














<<前ページ | ホーム | 次ページ>>