次のような双曲線平面上のテッセレーションのプロット(ポアンカレ円盤)を作成します。
プログラムは4つの入力を受け取ります。
1)エッジ/ポリゴンの数(この例では3つ)。
2)各頂点で交差する数(この例では7つ)。
3)レンダリングする中心の頂点から何ステップ離れているか(詳しく見ると、この例では5)。これは、中心から5ステップ以内で到達できる頂点が含まれることを意味します。エッジは、両方の頂点が含まれている場合にレンダリングされます。
4)画像の解像度(単一のピクセル数、画像は正方形)。
出力は画像でなければなりません。エッジは、線ではなく円弧としてレンダリングする必要があります(ポアンカレ円盤投影は線を円に変換します)。ポイントをレンダリングする必要はありません。ユーザーが双曲線でないもの(つまり、各頂点で5つの三角形が出会う)を入力する場合、プログラムは正しく動作する必要はありません。これはコードゴルフなので、最も短い答えが優先されます。
より明確に。
—
Kevin Kostlan、2015
非常に明確になりました:)
—
trichoplax
これは暗黙的ですが、次のことを明示的にすることをお勧めします。a)ポアンカレ円板モデルを使用する必要があります(半平面モデルの解答も受け入れない限り)。b)頂点は、ポリゴンの中心ではなく、ディスクの中心にレンダリングする必要があります。
—
Peter Taylor、
頂点はディスクの中心になければなりませんか?または、ディスクの中心をポリゴンの中心にすることはできますか?
—
DavidC
これには本当に背景情報がもっと必要です。私はいくつかのサイトを見ましたが(質問には何も記載されていません)、一般的なケースはもちろんのこと、サンプルの図を描くための正確な仕様を理解できません。それが指定されていない場合、人々が懸命に取り組んだ無効な回答が返される可能性があります(たとえば、非放射状の線が円弧として表されることを理解していますが、誰かがショートカットを使って直線を実行する可能性があります)。また、中心の頂点からの線のエッジ長(円の半径のパーセンテージとして)を指定する必要があります。
—
Level River St