Matlab,如何在球面画出一个点,以便在生成的图像中可见?

如题所述

如何用Matlab在球面画出一个可见点?

首先,我们用sphere球函数计算绘出单位球的【x,y,z】数据;

其二,根据球半径r,计算球半径为r的【x,y,z】数据;

其三,使用surf函数绘制其球面。

最后,用hold on命令和plot3函数将球面上的一个点【x1,y1,z1】绘制在图像上。

实现代码:

[X,Y,Z] = sphere;  %用于绘出单位球的【x,y,z】数据

r = 5;  %球半径

X2 = X * r;

Y2 = Y * r;

Z2 = Z * r;

surf(X2,Y2,Z2)  %球半径为r = 5的球面

hold on %在同一图像增加其他图形

plot3(-3.5355,-3.5355,0.7822,'rp') %绘制球面上的一个点

axis equal

xlabel('x'),ylabel('y'),zlabel('z');

执行结果

追问

这个点的数据是怎么得到的?

为什么点是个五角星,而不是个点呢?

追答

为了看清,特意用五角星代替,点可以用o表示

温馨提示:答案为网友推荐,仅供参考
相似回答