问题遇到的现象和发生背景
求点到圆的切线,A是点,B是圆心,r是半径
问题相关代码,请勿粘贴截图
function [x,y]=qiedian(A,B,r)
syms x y A B r;
[b,k]=solve([(k* num2str(B(1))- num2str(B(2)) +b)^2 == num2str(r) ^2*(1+k^2)],[(k* num2str(A(1)) - num2str(A(2)) +b)== 0 ]);
[(k* num2str(B(1))- num2str(B(2)) +b)^2 == num2str(r) ^2*(1+k^2)];
[(k* num2str(A(1)) - num2str(A(2)) +b)== 0];
k=double(k);
b=double(b);
for i=1:length(k)
[x* num2str(k(i)) -y+ num2str(b(i)) == 0];
[(y- num2str(B(2)) )* num2str(k(i)) == num2str(B(1)) -x];
[x(i), y(i)]=solve([x*( num2str(k(i)) )-y+( num2str(b(i)) )== 0],[(y-( num2str(B(2)) ))*( num2str(k(i)) )==( num2str(B(1)) )-x]);
end
x=double(x);y=double(y);
运行结果及报错内容
函数或变量 'k' 无法识别。
我的解答思路和尝试过的方法
无
我想要达到的结果
没有报错