2017-04-18 73 views
2

我似乎无法使用view([AZ,EL])命令实现以下​​3D图的视图方向。 Impossible coordinate system orientation?使用方位角和仰角的不可能的观点

无论我多么努力地使用鼠标或命令view本身尝试旋转图中的3D图,我无法获得该视角。是否有另一种指定视点的方法?

+0

通过'轴'你是指原来的轴,或一些'假'的?以下不会产生我所需要的:'山峰; view(gca,[60 45]); xlabel( 'X'); ylabel( 'Y'); zlabel('z')' – FliegenderZirkus

+0

看看['campos'](https://www.mathworks.com/help/matlab/ref/campos.html) – qbzenker

+0

我试着玩'campos','camtarget' ,'camup'几乎到了那里,但不完全。作为一名普通的3D CAD用户,我希望能够任意旋转图形用户界面中的场景,但_Camera Toolbar_中的任何选项似乎都无法做到这一点。 – FliegenderZirkus

回答

3

可以实现这些各种各样的使用camera control functions意见,在这种情况下camorbitcamroll

[X, Y, Z] = peaks(); 
hAxes = gca; 
surf(hAxes, X, Y, Z); 
xlabel('x'); 
ylabel('y'); 
zlabel('z'); 
camorbit(-90, 0); 
camroll(hAxes, -111); 

enter image description here

注意,正x朝上和向右,z轴正指向下方在右边,正面朝上。

我在MATLAB中完成了很多三维可视化工作,并将我常用的一些工具放在一起用于使用鼠标操作视图。我在MathWorks File Exchange上发布了一个这样的工具,名为MouseManagerOne of the demos我在提交中包含了如何创建视图的基于鼠标的操作(旋转,放大和缩放)的示例。

+0

该工具是❤。 –

+0

@SardarUsama:很高兴喜欢它。它几乎成为我所有GUI的主力。 ;) – gnovice

+0

我能说什么,MouseManager只是现货。 – FliegenderZirkus