已知圆的方程和斜线的斜率不知道斜线方程的截距,如何用MATLAB求出切点的坐标.

竹隐子 1年前 已收到1个回答 举报

pingjing2004 幼苗

共回答了14个问题采纳率:92.9% 举报

直线和圆相切,那么直线和过切点的半径垂直
知道了直线的斜率k,那么过切点半径所在直线的切线的斜率就是-1/k
圆方程知道,圆心的坐标也知道
根据点斜式,就可以知道过切点半径所在直线的方程
过切点半径所在直线的方程和圆方程联立,就可以求出切点的坐标
应该有两个解,因为固定斜率的直线和圆可能有两个位置相切

1年前 追问

10

竹隐子 举报

我是问如果用matlab软件编程解决

举报 pingjing2004

%圆方程(x-x0)^2+(y-y0)^2=r^2
x0=1;y0=1;r=1;
%直线y=k*x+b
k=1;
x1=r*cos(atan(k)+pi/2)+x0;
y1=r*sin(atan(k)+pi/2)+y0;
x2=r*cos(atan(k)-pi/2)+x0;
y2=r*sin(atan(k)-pi/2)+y0;
直线斜率是k,那么倾角是atan(k)
相切半径倾角是atan(k)+pi/2或者 atan(k)-pi/2
那么切点坐标就很容易由半径,倾角,圆心坐标得到
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.079 s. - webmaster@yulucn.com