![]() |
шарики на плоскости
Вложений: 2
в общем есть некоторая геометрическая фигура ...
просто треугольник со слегка "ломаной" гипотенузой и есть N кружков заданного радиуса (разные) надо разместить их в етом треугольнике так чтобы все растояния между кругами были максимальными ну короче чтобы они не накладывались друг на друга или ети накладывания были сведены к минимуму еще одно условие : решение задачи должно представлять вариацию решений ... мне нужно чтобы каждый раз было разное раставление кружков в атаче лутче нарисовано чем сказал :) ps. если не решение, то лутче идею подскажите а то я хз как зделать ето быстро |
Re: шарики на плоскости
http://www.red3d.com/cwr/steer/
Это про тип ИИ такой Steering Behaviors For Autonomous Characters называецца, вот в нем, есть такое же свойство: избегать столкновений. Ибо это ИИ, сделано довольно оптимизированно. Так что принцип именно оттула можно взять. |
Re: шарики на плоскости
JohnK
не катит я вот думаю как-то об относительном размещении типа берем одну точку в етой фигуре, потом берем случайное число которое лежит на промежутке от 0 до растояния от етой точки до вершины ищем любую точку которая имеет растояние такое же как наше число повторяем алгоритм в принципе такое решение возможно выдаст хорошую картинку :) есть еще мысли ? ps. еще поможет если кто-то даст способы равномерного randomа так чтобы полученные числа равномерно распространялись в промежутке |
Re: шарики на плоскости
Вложений: 2
Имхо, надо сделать рандомное расставление шариков внутри фигуры, а потом средствами физ. движка их выпихнуть, незаметно для пользователя. Вот как в chipmunk сделано, примерно также, только сделать радиус шариков больше видимого радиуса, тогда они будут отталкиваться друг от друга. А когда все расставлено, выключить обновление физики.
|
Re: шарики на плоскости
выбираем случайную координату в треугольнике, это центр шарика теперь расширяем его диаметр, пока не столкнется с краями фигуры или других шариков.
|
| Часовой пояс GMT +4, время: 18:03. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Перевод: zCarot