Matlab-创建 MATLAB的logo

2022-07-27 09:28:01 浏览数 (1)

创建 MATLAB 徽标,使用 membrane 命令生成徽标的曲面数据。

代码语言:javascript复制
L = 160*membrane(1,100);

创建一个图窗和一套坐标区以显示徽标。然后,使用通过 membrane 命令得到的点创建徽标的曲面。关闭曲面中的线条。

代码语言:javascript复制
f = figure;
ax = axes;

s = surface(L);
s.EdgeColor = 'none';
view(3)

调整坐标区范围,使坐标区紧密围绕在徽标周围。

代码语言:javascript复制
ax.XLim = [1 201];
ax.YLim = [1 201];
ax.ZLim = [-53.4 160];

使用坐标区的相机属性调整徽标视图。相机属性控制三维场景的视图,就像带有缩放镜头的相机一样。

代码语言:javascript复制
ax.CameraPosition = [-145.5 -229.7 283.6];
ax.CameraTarget = [77.4 60.2 63.9];
ax.CameraUpVector = [0 0 1];
ax.CameraViewAngle = 36.7;

更改坐标区的位置和 x、y 和 z 纵横比以填充图窗窗口中的额外空间。

代码语言:javascript复制
ax.Position = [0 0 1 1];
ax.DataAspectRatio = [1 1 .9];

创建光源以照亮徽标。光源本身不可见,但可设置其属性以更改坐标区中任何填充或曲面对象的外观。

代码语言:javascript复制
l1 = light;
l1.Position = [160 400 80];
l1.Style = 'local';
l1.Color = [0 0.8 0.8];
 
l2 = light;
l2.Position = [.5 -1 .4];
l2.Color = [0.8 0.8 0];

更改徽标的颜色。

代码语言:javascript复制
s.FaceColor = [0.9 0.2 0.2];

使用曲面的光照和镜面(反射)属性来控制光照效果。

代码语言:javascript复制
s.FaceLighting = 'gouraud';
s.AmbientStrength = 0.3;
s.DiffuseStrength = 0.6; 
s.BackFaceLighting = 'lit';

s.SpecularStrength = 1;
s.SpecularColorReflectance = 1;
s.SpecularExponent = 7;

关闭轴以查看最终结果。

代码语言:javascript复制
axis off
f.Color = 'black';

背景颜色也可以选择白色

代码语言:javascript复制
f.Color = 'white';

最好把制作的图标保存为图片备用

代码语言:javascript复制
saveas(f,'./matlab.jpg')

0 人点赞