Другой подход, который я могу придумать:
Сначала определитесь, сколько объектов вы хотите. Скажи 'N'
Случайно выберите 3 точки в 2D-пространстве.
Используйте 3 очка, чтобы получить виртуальный треугольник.
Теперь выберите другую точку таким образом, чтобы точка находилась за пределами виртуального треугольника. Теперь сформируйте еще один виртуальный треугольник, соединив эту точку с двумя точками предыдущего виртуального треугольника, а затем рекурсивно сформируйте «N» виртуальных треугольников. Если виртуальные треугольники пересекаются, то вы игнорируете большой треугольник и берете треугольники, которые образовались из-за точек пересечения, как новые виртуальные треугольники
Теперь сгенерируйте вкрапленный круг практически для всех виртуальных треугольников, которые никогда не смогут пересечь другой виртуальный треугольник, поскольку все виртуальные треугольники образуются без пересечения ни одного из треугольников, как описано выше.
Используйте виртуальные круги, чтобы сформировать любое количество регулярных сторон, разделив 360 градусов на равные кусочки.
Теперь вы можете рисовать случайные правильные многоугольники