MATLAB绘制地球仪

devtools/2024/9/24 4:31:07/
clc;close all;clear all;warning off;%清除变量% 地球半径(单位:千米)
R = 6371;% 定义角度范围
theta = linspace(0, 2*pi, 100); % 经度范围
phi = linspace(0, pi, 100); % 纬度范围(从北极到南极,0到pi)% 生成网格
[ThetaGrid, PhiGrid] = meshgrid(theta, phi);% 根据球体的参数方程计算X, Y, Z坐标
X = R * sin(PhiGrid) .* cos(ThetaGrid);
Y = R * sin(PhiGrid) .* sin(ThetaGrid);
Z = R * cos(PhiGrid);% 绘制地球仪
figure;
surf(X, Y, Z, 'EdgeColor', 'none'); % 无边缘颜色的表面图% 设置图形属性
axis equal; % 确保各轴比例相同,使球体看起来是圆的,而不是椭圆的
xlabel('X');
ylabel('Y');
zlabel('Z');
title('地球仪模型');
grid on;% 添加光照和材质以增强3D效果
shading interp; % 平滑着色
camlight left; % 添加左侧光源
lighting phong; % 使用Phong光照模型
material([0.5 0.5 0.5]); % 设置材质颜色为灰色,模拟地球的颜色% 可选:为地球添加经纬线
hold on;
for lon = 0:30:330 % 经线,每隔30度画一条plot3(R*cosd(lon)*sind(PhiGrid), R*sind(lon)*sind(PhiGrid), R*cosd(PhiGrid), '--k');
end
for lat = -90:15:90 % 纬线,每隔15度画一条circleRadius = R*cosd(lat);circleTheta = linspace(0, 2*pi, 100);plot3(circleRadius*cos(circleTheta), circleRadius*sin(circleTheta), repmat(R*sind(lat),1,length(circleTheta)), '--k');
end
hold off;% 调整视角以便更好地查看地球仪
view(3); % 设置3D视角


http://www.ppmy.cn/devtools/5537.html

相关文章

高通 Android 12 源码编译aidl接口

最近在封装系统sdk接口 于是每次需要更新aidl接口 ,传统方式一般使用make update-api或者修改Android.mk文件,今天我尝试使用Android.bp修改 ,Android 10之前在Android.mk文件修改,这里不做赘述。下面开始尝试修改,其实…

小程序插件引入宿主的函数

微信小程序的插件和宿主应用是独立的,插件无法直接通过 require 引用宿主应用中的文件。错误信息 Plugin module "" is not defined 表明你尝试在插件中使用了 require 来加载一个不存在的模块。 当需要在插件中使用宿主的某些方法时,必须通过…

多头蜗杆的轴截面和端截面的关系

最近有一个点,之前没有注意,就是多头蜗杆的导程与齿距的关系,它们会影响蜗杆断截面的形状,是不是听的有点别扭,往下看: 上图是一个蜗杆的轴剖面齿形,看到这个图形,如果看不到蜗杆实物…

【AcWing】蓝桥杯集训每日一题Day28|组合计数|二项式定理|杨辉三角|211.计算系数(C++)

211.计算系数 211. 计算系数 - AcWing题库难度:简单时/空限制:1s / 64MB总通过数:3703总尝试数:7790来源:《算法竞赛进阶指南》NOIP2011提高组算法标签二项式定理组合计数 题目内容 给定一个多项式 ( a x b y ) k …

HTML段落标签、换行标签、文本格式化标签与水平线标签

目录 HTML段落标签 HTML换行标签 HTML格式化标签 加粗标签 倾斜标签 删除线标签 下划线标签 HTML水平线标签 HTML段落标签 在网页中&#xff0c;要把文字有条理地显示出来&#xff0c;就需要将这些文字分段显示。在 HTML 标签中&#xff0c;<p>标签用于定义段落…

【QT教程】QT6与Python

QT6与Python 使用AI技术辅助生成 QT界面美化视频课程 QT性能优化视频课程 QT原理与源码分析视频课程 QT QML C扩展开发视频课程 免费QT视频课程 您可以看免费1000个QT技术视频 免费QT视频课程 QT统计图和QT数据可视化视频免费看 免费QT视频课程 QT性能优化视频免费看 免费QT视…

将闲置的windows硬盘通过smb共享的方式提供给mac作为时间机器备份

1.windows端&#xff0c;开启smb共享 自行解决 2.mac端 磁盘工具-文件-新建映像-空白映像 假设你的名字为&#xff1a;backup 大小&#xff1a;350GB&#xff08;自己修改&#xff09; 格式&#xff1a;MacOS扩展&#xff08;日志式&#xff09; 分区&#xff1a;单个分区-A…

设计模式:代理模式

文章目录 一、什么是代理模式二、代理模式的结构1、介绍2、代码实现样例&#xff08;1&#xff09;静态代理&#xff08;2&#xff09;动态代理 三、代理模式的应用场景 一、什么是代理模式 为某一个对象提供一个代理或占位符&#xff0c;并由代理对象来控制对原对象的访问。 …