Если я хочу сгенерировать группу точек, равномерно распределенных по кругу, я могу сделать это (python):
r = 5 #radius
n = 20 #points to generate
circlePoints = [
(r * math.cos(theta), r * math.sin(theta))
for theta in (math.pi*2 * i/n for i in range(n))
]
Однако , та же самая логика не генерирует однородные точки на эллипсе: точки на «концах» расположены ближе друг к другу, чем точки на «сторонах».
r1 = 5
r2 = 10
n = 20 #points to generate
ellipsePoints = [
(r1 * math.cos(theta), r2 * math.sin(theta))
for theta in (math.pi*2 * i/n for i in range(n))
]
Есть ли простой способ генерировать точки на равных расстояниях вокруг эллипса?