Алгоритмы позиционирования объектов на холсте - PullRequest
3 голосов
/ 27 июня 2009

Где я могу найти какой-нибудь алгоритм для умного позиционирования некоторых объектов на холсте? Я использую javascript (с библиотекой Raphael svg), но приветствуются примеры с другими языками (или псевдоязыками). Геометрия не моя сильная сторона =)

Например, у меня есть холст 600x800, и я хочу разместить умные способы n объектов размером 60x60, например:
- алгоритм позиционирования объектов вдоль m концентрических окружностей со смещением o .
- алгоритм позиционирования объектов вдоль m концентрических квадратов, но с альтернативной частотой (результат может быть похож на шахматную доску)

И похожие примеры ... Я просто ищу несколько рабочих примеров, чтобы приспособиться к моему случаю. Заранее спасибо =)

1 Ответ

1 голос
/ 30 июня 2009

для круга:

Входы: CenterPt (предположительно 300 400), RadiusLargestCircle (предположительно 270, чтобы убедиться, что все ваши объекты на экране) RadiusDelta (60 гарантирует отсутствие перекрывающихся объектов при условии, что объекты являются кругами)

рассчитать количество кругов ((RadiusLargestCircle -2 * RadiusDelta) / RadiusDelta)

для каждого круга

  RadCir= RadiusLargestCircle - (CircleNum*RadiusDelta)

(Я закончу это позже, мне пора)

но по существу первый centerpt объекта идет в x = radiusLargestCircle, y = 0

разделить радиус объекта 2 * на окружность круга

для num объектов

с использованием параметрического уравнения окружности, Поместить объект на x радиан от предыдущего

следующий круг

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...