【发布时间】:2016-06-21 07:28:42
【问题描述】:
任何椭圆都可以由五个参数唯一定义,即中心 x0 和 y0、半长轴长度 a、半短轴长度 b 和方位角 theta。我有参数 x0、y0、a、b 和 theta。我怎样才能准确地画出椭圆?
【问题讨论】:
任何椭圆都可以由五个参数唯一定义,即中心 x0 和 y0、半长轴长度 a、半短轴长度 b 和方位角 theta。我有参数 x0、y0、a、b 和 theta。我怎样才能准确地画出椭圆?
【问题讨论】:
在提出此类问题之前需要进行一些研究。主要是问题被问的时间过长。
你可以这样做:
设 (x1,y1) 和 (x2,y2) 为椭圆长轴的两个顶点的坐标,设 e 为其离心率。
a = 1/2*sqrt((x2-x1)^2+(y2-y1)^2);
b = a*sqrt(1-e^2);
t = linspace(0,2*pi);
X = a*cos(t);
Y = b*sin(t);
w = atan2(y2-y1,x2-x1);
x = (x1+x2)/2 + X*cos(w) - Y*sin(w);
y = (y1+y2)/2 + X*sin(w) + Y*cos(w):
plot(x,y,'y-')
axis equal
我没有时间测试它,但它应该可以工作。 下次请阅读本节:How do I ask a good question
【讨论】: