Я просто генерирую простой код меша для размещения сигнала.
Вот пример общей формы сетки:
domain = Rectangle(Point(0.0, 0.0), Point(1.0, 1.0))
Позже я создаю координаты окружности, не касаясь непосредственно границ этим фрагментом кода:
xN = random.uniform(0.1, 0.9)
yN = random.uniform(0.1, 0.9)
circ = Circle(Point(xN, yN), 0.1)
Внутри "домена" я размещаю эти круги.
Поместить один круг не проблема, но для большего места требуется вычислить столкновение между каждым из них.
Я пытался использовать скрипт isPointInPath, но для точки все в порядке, а не для круга (фигуры), который мне нужно использовать и вычислить.
Итак, в общем, я должен:
- создать форму (позже используется как сетка)
- создать круг и вычесть его из формы
- сгенерировать еще один круг и, если он не сталкивается, вычесть его из вычитаемой формы
- и так далее ...
Поскольку я не хочу генерировать круги в бесконечность (когда внутри фигуры не будет пространства без отверстий), я просто останавливаю ее после 3 раз «не удалось обнаружить столкновение».
Какую простую функцию или способ я должен использовать, чтобы достичь своего эффекта. Я пробовал много вещей, но мой путь более прост (объекты не двигаются).