matlab两点间的球面距离,用MATLAB求点到椭球面距离已知如图a、b和点的位置,求点到球面的距离。最好是用MATLAB的。谢谢~...

这个应当不难:可以采用参数方程画出椭圆,然后利用点坐标到参数方程的距离解决:问题是楼主的表达有问题,如果是点到线的距离就有多个值,(准确的说是个函数),例如,原点(0,0)到椭圆右端点距离是a/2,到上端点的距离是b/2.那这里我就认为楼主是要求最短距离了,我假定了些数据:

a=2%长短半轴

b=1

m=4%已知一点的坐标

n=5

t=[0:0.1:2*pi]

x=a*cos(t)%椭圆参数方程

y=b*sin(t)

M=m*ones(size(t))

N=n*ones(size(t))

d=sqrt((M-x).^2+(N-y).^2)%点到椭圆的距离

q=min(d)%点到椭圆的最短距离

plot(x,y)

hold on

plot(m,n,'ro')%展示

for i=1:2*pi/0.1%寻找与最短距离相等时的元素排行

if d(1,i)==q

T=0.1*i

x0=a*cos(T)%将此元素的对应的椭圆坐标表表示出来

y0=b*sin(T)

plot(x0,y0,'bo')

end

end

hold off

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值