Aby korzystać bieżący kąt widzenia na innym rysunku, można zrobić:
% call when the source axes is the current axes
[az, el] = view;
% call when the target axes is the current axes
view (az, el);
Albo, można zrobić to samo przy użyciu get
i set
nieruchomości view
.
Jednak, aby zastosować wszystkie właściwości widoku, o których wspominałeś razem, łatwiej jest użyć wbudowanej opcji "generuj plik m" Matlaba - gdy masz figurę 3D w oczekiwany sposób, przejdź do: file
->Generate m-file
, zostanie utworzony plik m, który pobierze dane 3D jako dane wejściowe i zastosuje ustawienia.
Inną opcją jest, aby zapisać te odpowiednie ustawienia siebie (tylko skontrolować m-plik wygenerowany):
plot3(sin(t),cos(t),t);
pba = get(gca, 'PlotBoxAspectRatio');
dar = get(gca, 'DataAspectRatio');
cva = get(gca, 'CameraViewAngle');
cuv = get(gca, 'CameraUpVector');
ct = get(gca, 'CameraTarget');
cp = get(gca, 'CameraPosition');
a następnie zastosować je do aktualnych osi (zakładając, że cel osi jest obecny jeden):
set(gca, 'PlotBoxAspectRatio',pba);
set(gca, 'DataAspectRatio',dar);
set(gca, 'CameraViewAngle',cva);
set(gca, 'CameraUpVector',cuv);
set(gca, 'CameraTarget',ct);
set(gca, 'CameraPosition',cp);