2012-03-23 8 views
0


Я ищу алгоритм для вычисления положения векторов, который определяет многоугольник, представляющий одну плиту.

У меня есть узор плитки - многоугольник, определяемый 16 вершинами, которые находятся в поле вершин. Например, у меня есть квадрат (или ромб или любой другой полином, который может совпадать с одним и тем же полигоном).
Алгоритм разбиения на вершины

x - x - x - x - x 
|    | 
x    x 
|    | 
x    x 
|    | 
x    x 
|    | 
x - x - x - x - x 

Этот шаблон представляет собой одну плитку. Если я перемещусь с одной вершиной (измените ее положение), мне придется пересчитать положение другой вершины, чтобы иметь плитку, которая подходит вместе с другими плитами.
1) Существует ли какой-либо алгоритм, который уже решает это?
2) Что такое хороший базовый шаблон? Площадь слишком проста.
Я слышал, что хорошо иметь симметричные формы для узоров, потому что легче пересчитать его.

Редактировать: Мотивация - это рисовать плитки на некоторых растровых изображениях. Это как плитки в вашей ванной, они также должны сочетаться.

+0

Извините, что? Почему вы не можете просто переместить каждую вершину в одном направлении на ту же сумму? –

+0

Причина, по которой перемещается одна вершина, заключается в изменении формы;) – user1097772

+0

Итак, вы спрашиваете, существует ли алгоритм для определения того, может ли определенный набор плиток разбивать плоскость? Я думаю, что вы будете сильно разочарованы ... –

ответ

0

Если я понимаю ваш вопрос: вы начинаете с квадрата, который проходит через некоторые вершины (горизонтально и вертикально-симметричные), которые вы используете для плитки. Вы перемещаете некоторые из этих вершин вокруг, и хотите знать, как сохранить рельефную форму черепицей?

В этом случае каждый раз, когда вы перемещаете вершину, перемещайте вертикально-горизонтально-зеркальную вершину в том же направлении на ту же величину.

Например, если вы переместите нижнюю правую вершину вниз 2 и вправо 1, вы также должны переместить верхнюю левую вершину вниз 2 и вправо 1. Это создаст «отверстие» в левом верхнем углу, плотно прилегает к новому острому краю в правом нижнем углу.

0

Об основных черепичной состоянии формы:

площади и прямоугольник, шестиугольник хорошие базовые плитки в состоянии формы.

Равносторонние треугольники имеют плитку, но их нужно перевернуть.

Есть также более сложные узоры, где плитки не идентичны. То есть восьмиугольник + квадрат.

Смежные вопросы