Как сделать эллипс из точек

Теперь я рисую картинки по кругу по формуле:

     float x = CIRCLE_RADIUS *  (float) Math.sin(2f * Math.PI * drawSquareIndex / ITEMS_COUNT + angle) * 1.75f;

где х - это точка Х круга.

И у меня есть круг.

но я хочу рисовать картинки на эллипсе. Какую формулу мне нужно использовать?

Как я могу это сделать?

PS извините за качество. Сделайте вопрос с телефона.

1 ответ

Решение

Вы можете использовать параметрическое уравнение эллипса (a = b это случай Cirle):

x = a * cos(t)
y = b * sin(t)
t = 0..2*PI

В твоем случае

  // Pseudo code
  for (double t = 0; t < 2 * PI; t += 0.001) { // <- or different step
    double x = RadiusX * Math.Cos(t);
    double y = RadiusY * Math.Sin(t);

    Paint(x, y);
  }
Другие вопросы по тегам