У меня есть прямоугольник в.NET, в которой я тяну эллипс.
Я знаю ширину, высоту и центральную точку того прямоугольника.
Конечно, центральная точка прямоугольника является также центральной точкой эллипса.
Я знаю, как вычислить точку на круг, однако у меня нет подсказки об эллипсе.
У меня есть те параметры и угол, мне нужна точка на эллипсе, кто-то может отправить формулу?
Я видел где-нибудь, что необходимо вычислить 2 точки, в которых пойдут 2 радиуса, сумма радиусов будет установлена, и они изменятся в размере соответственно.
Я не знаю, как сделать это, у меня только есть прямоугольная высота, ширина и центральная точка и конечно угол, в котором я хочу найти точку.
спасибо за любую справку Shlomi
Вы можете использовать каноническую форму в полярных координатах для вашей задачи, где ширина и высота прямоугольника равны w и h соответственно.
где t - угол в радианах, a - w/2 и b - h/2
Итак, чтобы построить эллипс, все, что вам нужно сделать, это изменить t от 0 до 360 градусов (в радианах это 0 и 2pi) и в зависимости от того, как вы расставите t, вы получите точки на эллипсе.
Поскольку ваш прямоугольник не центрирован в начале координат, вам придется сместить его на координаты центра прямоугольника, скажем, (Cx,Cy)
const double C_x = 10, C_y = 20, w = 40, h = 50;
for(double t = 0; t <=2*pi; t+=0.01)
{
double X = C_x+(w/2)*cos(t);
double Y = C_y+(h/2)*sin(t);
// Do what you want with X & Y here
}