私は幾何学模様を持っています–例えば、十字架:
重ねて並べて繰り返したいのですが…簡単です:
青い正方形は、100×100 pxのユニットタイルを示しています。
ただし、ここで問題が発生します。画像を約30度回転させてから、タイリングします。これは驚くほど難しいことがわかりました。もちろん画像の回転は簡単ですが、垂直のユニットタイル(上の画像の青いブロック)を見つけるのは簡単ではありません。
明らかに、100×100ユニットタイルはそれをカットしません。正しいユニットタイルを選択するにはどうすればよいですか?位置はおそらく重要ではなく、サイズだけが重要ですが、それを計算する方法がわかりません。直感的に私は、回転角度とすることを期待して、ドット積が重く特色にするが、それははるかに私が得たようだとして、1。さらに悪いことに、ピクセルの固有の離散性のため、任意の角度の回転は正確ではないため、数学的に正しいサイズを計算しても、必ずしもシームレスなタイルになるとは限りません。
では、垂直ユニットセルのサイズ(ここでは100×100)とおおよその望ましい角度を考慮して、最適な角度とサイズの組み合わせを計算するにはどうすればよいですか?
1私の考えは(Wikipedia表記を使用して)、BへのAの投影をBと同じ長さにしたいので、| B | = | A |・cosϑ、つまり| A | = | B | / cosϑ 。私の場合、これは新しい長さ| A | = 115.470を生成しますが、単純な試みは、醜い非整数の数を生成することに加えて、ロングショットではこれが正しくないことを示しています。実際、上記の回転した画像を見るだけで、200×400の画像全体に繰り返し垂直単位が含まれていないことがわかります。