You are viewing beroal

язык, на котором не говорят - генератор тетрисов [entries|archive|friends|userinfo]
beroal

[ website | personal website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

генератор тетрисов [Sep. 25th, 2012|05:54 pm]
Previous Entry Add to Memories Share Next Entry
Пусть в тетрисе фигуры имеет кривую границу. Можно ли в него играть? Границы разных фигур должны частично совпадать. Я думаю, надо поделить фигуру на кривые отрезки. Есть множество кривых отрезков. Даже функция, которая описывает отрезок, не имеет значения, будь она хоть трижды недифференцируемой. Нам достаточно знать размах отрезка, то есть разницу между началом и концом отрезка. Ещё надо как-то добиться, чтобы сумма размахов отрезков, образующих фигуру, была равна нулю.

Изучай математический анализ, играя в тетрис! Ориентирован на понимание.
LinkReply

Comments:
[User Picture]From: 66george
2012-09-25 03:35 pm (UTC)

(Link)

Из правильных замощений (плитками) легко делать кривые, как угодно искажая края плиток. Подробности в книге Берже "Геометрия", том 1 (я находил в интернете).
From: nivanych
2012-09-25 03:45 pm (UTC)

(Link)

Да из любых замощений, вообще-то.
Для простоты, односвязными фигурами с какой-то не очень сложной границей.
Так и формировать — преобразовывать замощение треугольной плиткой.
[User Picture]From: beroal
2012-09-26 09:17 am (UTC)

(Link)

Ты имеешь в виду разбиение плоскости на правильные треугольники?
From: nivanych
2012-09-26 10:09 am (UTC)

(Link)

Я имею в виду любое разбиение плоскости односвязными фигурами.
Например, для простоты, правильными треугольниками.
Или 6-угольниками.
[User Picture]From: beroal
2012-09-26 05:20 pm (UTC)

(Link)

Скорее всего, получится, что совместить фигуры можно будет единственным способом, как пазл. Это слишком скучно. Я бы хотел, чтобы к одному участку одной фигуры можно было приложить много фигур.
From: nivanych
2012-09-26 05:21 pm (UTC)

(Link)

Нужно уточнять правила.
Например, когда складываются "ряды"?
Все полоски, которые заполнены?
[User Picture]From: beroal
2012-09-27 10:37 pm (UTC)

(Link)

Я думал, правила очевидны. Если горизонтальный прямой отрезок включён в объединение фигур, то на высоте этого отрезка оно заполнено.
From: nivanych
2012-09-28 03:13 am (UTC)

(Link)

В таком вот случае, задумываться о каком-то совпадении фигур уже бестолку — после нескольких таких уничтожений "линий", уже сложенные там фигуры будут уже никакие.
Поэтому, надо либо как-то составлять наборы, учитывая такие вот уничтожения, либо менять правила.
Навроде, чтобы если накапливается "достаточно плотная линия", то она уничтожается.
[User Picture]From: beroal
2012-09-26 05:20 pm (UTC)

(Link)

Ещё получается, что фигуру можно приложить к самой себе. Потому что границы совпадают. Чепуха какая-то.
From: nivanych
2012-09-26 05:22 pm (UTC)

(Link)

Угублин. Так же, как и в тетрисе.
From: nivanych
2012-09-25 03:41 pm (UTC)

(Link)

Надо как-то ограничить набор фигур и способ их формирования.
Я думаю, что сойдут односвязные фигуры, ограниченные кусочно-кубическим сплайном без самопересечений.
[User Picture]From: beroal
2012-09-26 09:13 am (UTC)

(Link)

кусочно-кубическим сплайном
Вид функций не имеет значения. Достаточно, чтобы функции совпадали у разных фигур.
From: nivanych
2012-09-26 10:07 am (UTC)

(Link)

Ну вот — один кусочек из сплайна совпадает, уже хорошо. И остаётся только проверить односвязность и отсутствие самопересечений.
Может быть, проще и будет брать любое регулярное покрытие (например, 6-угольниками) и преобразовывать его неким "случайным" гомеоморфизмом в себя, результат и брать.
[User Picture]From: beroal
2012-09-27 10:55 pm (UTC)

(Link)

Я думаю, что придётся отказаться от кривых сторон. Допустим, имеем 3-угольник, и каждая сторона имеет три разновидности, получится 27 фигур. Это уже очень много.