凸多角形の完全グラフ(一筆書き)
凸多角形の完全グラフを描くプログラムです。Silverlightアプリケーションとして作成しました。
頂点の数が奇数のときは、一筆書きになるようにしています。偶数のときは一筆書きはできないので、
とりあえず、完全グラフを描くようにしました。
頂点の数が奇数か偶数かで処理を分岐させないで、これをやれるようにしています(SearchPathメソッド)。
でもちょっとややこしい再帰処理になってしまいました。
PerfectGraphクラスのほうは、LINQ使ってそれぞれのメソッドを簡潔に書けたと思います。
完全グラフを作成する本質部分は、Silverlightに依存しないように作成していますので、WindowsFormsアプリに移植することも それほど難しくはないと思います。
Startボタンを押せば、多角形の完全グラフを描くアニメーションが始まります。
頂点の数が奇数か偶数かで処理を分岐させないで、これをやれるようにしています(SearchPathメソッド)。
でもちょっとややこしい再帰処理になってしまいました。
PerfectGraphクラスのほうは、LINQ使ってそれぞれのメソッドを簡潔に書けたと思います。
完全グラフを作成する本質部分は、Silverlightに依存しないように作成していますので、WindowsFormsアプリに移植することも それほど難しくはないと思います。
Startボタンを押せば、多角形の完全グラフを描くアニメーションが始まります。
■page.xaml
■page.xaml.cs
■page.xaml.cs