对于椭圆的参数方程,它具有以下样式:
或者可以写成矩阵形式
现在我想用MATLAB中的系数矩阵[a b c; d e f]
绘制它
方法1 :plot
function drawEllipse1(mat)
t = linspace(0,2*pi,101);
vec = [sin(t); cos(t); ones(1,length(t))];
%calculate the coordinates of ellipse
ellipse = mat1*vec;
ellipseX = ellipse(1,:);
ellipseY = ellipse(2,:);
plot(ellipseX,ellipseY)
end
方法2 :ezplot
function drawEllipse2(mat)
syms t;
ellipseExpr = mat*[sin(t); cos(t); 1];
%pass a function handle
ezplot(@(t)ellipseExpr(1),@(t)ellipseExpr(2),[0,2*pi])
end
然而,drawEllipse2()
无法正常绘制椭圆?我不知道为什么。
mat = [1 2 3;4 5 6];
drawEllipse2(mat)