![]() |
|
|
![]()
|
|
| _Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Из чисто эстетического интереса задумался над вопросом описания поверхности, состоящей из шестиугольников? Причем интересует не описание самого рисунка, а имеенно набора расположенных на плоскости шестиугольных объектов.
Вот например ![]() В первом (1) квадратные объекты помещаются в матрицу. Объект легко находится по индексу. Для него известны ближайшие соседи - тоже по индексу. А как быть с шестиугольными объектами (2)? -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
берём сетку из квадратов, скашиваем на угол 30 градусов и заменяем каждый квадрат на шестиугольник
индексы клеточек сохраняются Добавлено через 5 минут и 32 секунды что касается соседей - здесь у каждой клеточки будет 6 соседей и индексы их будут такие: x+1,x-1,y+1,y-1,x+1,y+1,x-1,y-1 впрочем, такое соседство нередко рекомендуют использовать даже если шестиугольников нет, а есть сетка из квадратов - оно более естественно, а то с 4- или 8-соседством на квадратной сетке можно натыкаться на всякие неприятности типа непересекающихся непараллельных прямых или несвязности границы области -------------------- qqq |
|||
|
||||
| _Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
maxim1000, извиняюсь, но я что-то ничего не понял
-------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
![]() предполагается, что квадратные клетки нумеруются двумя индексами: первый по горизонтали, второй - по вертикали, эта же нумерация переносится на шестиугольные при таком подходе вычислить координаты центра клетки по её индексу и наоборот становится очень простой задачей Это сообщение отредактировал(а) maxim1000 - 10.5.2009, 02:02 -------------------- qqq |
|||
|
||||
| _Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
maxim1000, спасибо. теперь дошло. действительно очень просто
-------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |