Getting camera viewing data in real time

3 次查看(过去 30 天)
Is there a way to get the following data from a 3D plot in real time as I move the view?
app.UIAxes.View;
app.UIAxes.CameraPosition;
app.UIAxes.CameraTarget;
app.UIAxes.CameraUpVector;
app.UIAxes.CameraViewAngle;
Basically I want to adjust the view on a single plot and then pass the data to other plots. So that I don't have to adjust them one by one.

采纳的回答

Konrad
Konrad 2022-3-18
编辑:Konrad 2022-3-18
Hi,
you can link the Camera-properties of the axes:
figure; ah(1) = axes;
figure; ah(2) = axes;
plot3(ah(1),rand(10,1),rand(10,1),rand(10,1),'*');
plot3(ah(2),rand(10,1),rand(10,1),rand(10,1),'*');
linkprop(ah,{'CameraPosition','CameraTarget','CameraUpVector','CameraViewAngle'});
EDIT:
It seems that zooming behaves odd using the above code (with 'CameraUpVector' and 'CameraViewAngle'). To synchronize zooming better use:
linkprop(ah,{'CameraPosition','CameraTarget','Xlim','Ylim','ZLim'});
Best, Konrad

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Graphics Object Properties 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by