2015-09-02 2 views
0

при повороте 3D-графика в Matlab можно полностью вращать, так что на 360 ° вокруг оси z (азимутальный угол), но только от +/- 90 ° вокруг осей x/y (угол места). Я знаю, что это включает в себя все возможные виды в сферической системе координат, но мой клиент хотел бы иметь те же функциональные возможности, что и в Fiji (3D-Viewer) или аналогичных 3D-Viewers, чтобы полностью вращаться вокруг 360 ° вокруг суровая ось.Matlab: полное 3D-вращение с повышением высоты +/- 90

Как просто демо:

surf(peaks); rotate3d on 

Я подумал о обрабатывает слушатель обратного вызова, когда изменяется вид, а затем регулировать азимутальный и углы возвышения соответственно для создания ощущения полного вращения, но, может быть, у кого-то лучше и проще идея :)

Приветствия Mika

ответ

0

Я нашел возможное решение:

можно включить панель управления камерой и использовать функциональность каморбита, которая делает именно то, что она должна. В моем графическом интерфейсе я просто включил/отключил его с помощью пользовательской кнопки переключения на панели инструментов, такой как

if strcmp(get(handles.uitoggletool5,'State'),'on') == 1 
    cameratoolbar('SetMode','orbit'); 
else 
    cameratoolbar('SetMode','nomode'); 
end 
Смежные вопросы