Hauptinhalt

Erstellen des MATLAB-Logos

R2026b

Dieses Beispiel veranschaulicht, wie das MATLAB® Logo erstellt und angezeigt werden kann.

Verwenden Sie den Befehl membrane, um die Oberflächendaten für das Logo zu generieren.

L = 160*membrane(1,100);

Erstellen Sie eine Abbildung und eine Achse, um das Logo anzuzeigen. Erstellen Sie daraufhin mithilfe der Punkte des Befehls membrane eine Oberfläche für das Logo. Schalten Sie die Linien der Oberfläche aus.

f = figure;
ax = axes;

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

Figure contains an axes object. The axes object contains an object of type surface.

Passen Sie die Grenzen der Achsen so an, dass die Achsen eng am Logo anliegen.

ax.XLim = [1 201];
ax.YLim = [1 201];
ax.ZLim = [-53.4 160];

Figure contains an axes object. The axes object contains an object of type surface.

Passen Sie die Ansicht des Logos mithilfe der Kameraeigenschaften der Achsen an. Kameraeigenschaften steuern die Ansicht einer dreidimensionalen Szene, ähnlich zu einer Kamera mit Vergrößerungsobjektiv.

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;

Figure contains an axes object. The axes object contains an object of type surface.

Ändern Sie die Position der Achsen und das x-, y- und z-Seitenverhältnis, um den leeren Raum im Abbildungsfenster zu füllen.

ax.Position = [0 0 1 1];
ax.DataAspectRatio = [1 1 .9];

Figure contains an axes object. The axes object contains an object of type surface.

Erstellen Sie Lichtquellen, um das Logo zu beleuchten. Das Licht selbst ist nicht sichtbar, aber seine Eigenschaften können geändert werden, um das Erscheinungsbild eines Patch- oder eines Oberflächenobjekts in den Achsen zu verändern.

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];

Figure contains an axes object. The axes object contains an object of type surface.

Ändern Sie die Farbe des Logos.

s.FaceColor = [0.9 0.2 0.2];

Figure contains an axes object. The axes object contains an object of type surface.

Verwenden Sie die Beleuchtungs- und Spiegeleigenschaften (Reflektanz) der Oberfläche, um die Beleuchtungseffekte anzupassen.

s.FaceLighting = 'gouraud';
s.AmbientStrength = 0.3;
s.DiffuseStrength = 0.6; 
s.BackFaceLighting = 'lit';

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

Figure contains an axes object. The axes object contains an object of type surface.

Schalten Sie die Achse aus, um das Endergebnis zu betrachten.

axis off
f.Color = 'black';

Figure contains an axes object. The hidden axes object contains an object of type surface.