Задать вопрос
  • Как раскидать объекты по определенному объему без пересечения?

    zx300
    @zx300
    1) генерим рандомные координаты
    2) помечаем, что эти координаты заняты
    3) на следующей итерации смотрим не заняты ли координаты
    4) если заняты, то повторяем всё заново


    Мне кажется алгоритм хороший, но допилить надо таким образом:
    1) генерим рандомные координаты из всего диапазона пространства
    2) помечаем, что эти координаты заняты
    3) генерим рандомные координаты, при этом изключаем из диапазона рандомайза занятые точки (функцию рандома нужно составную для этого юзать)
    4) если не достигли нужного количества координат, переходим на пункт 2

    demolishka Хороший вариант посоветовал, более скоростной, но по моему, менее рандомайзный.
    Тут вобщем ещё требования к рандомайзности процесса важны, и в часности пропорция размера пространства и размеров обьектов. Если обекты в тесном пространстве, то сильно не разрандомишся и можно выбирать из списка перестановки. Если пространство много больше размера обьектов, я бы выбрал генераицю рандомных координат.