Увеличьте расстояние при рисовании эллипса - PullRequest
0 голосов
/ 02 июля 2011

Как я могу увеличить расстояние, когда рисую эллипс из определенной точки?Это код, который я использую, чтобы нарисовать эллипс в c #:

public double[] CalculatePosition(double centerX, double centerY, double angle)
{
    double[] position = new double[2];
    position[0] = Math.Cos(angle) * radiusX + centerX;
    position[1] = Math.Sin(angle) * radiusY + centerY;
    return position;
}

нарисовать эллипс на основе точки.функция, которая использует это, нарисуйте, например, 5 эллипсов, вокруг точки.

1 Ответ

0 голосов
/ 02 июля 2011

Вы имеете в виду размер затмения? В этом случае вы хотите изменить radiusX и radiusY.

Лучший способ сделать это - передать их в качестве параметров функции:

public double[] CalculatePosition(double centerX, 
                                 double centerY, 
                                 double radiusX,
                                 double radiusY,
                                 double angle)
{
    double[] position = new double[2];
    position[0] = Math.Cos(angle) * radiusX + centerX;
    position[1] = Math.Sin(angle) * radiusY + centerY;
    return position;
}

Затем вы можете нарисовать несколько эллипсов вокруг одной и той же точки, вызвав эту функцию несколько раз и изменяя радиус X и радиус Y.

...