rotate3d off not working
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have an application that uses pcshow() to plot a point cloud. It seems to activate rotate3d which I have to turn off by all means because I need the mouse cursor to trigger click events of graphical objects. When using rotate3d off after pcshow() Matlab prints the following error messages:
Property assignment is not allowed when the object is empty. Use subscripted assignment to create an array element.
Error in vision.internal.pc.initializePCSceneControl>localRotateStopMode (line 79) btn.State = 'off';
Error in hgfeval (line 62) feval(fcn{1},varargin{:},fcn{2:end});
Error in matlab.uitools.internal.uimode/modeControl (line 22) hgfeval(hThis.ModeStopFcn);
Error in matlab.uitools.internal.uimode/set.Enable (line 173) obj.Enable = modeControl(obj,value);
Error in matlab.uitools.internal.uimodemanager>localSetMode (line 173) set(currMode,'Enable','off');
Error in matlab.uitools.internal.uimodemanager/set.CurrentMode (line 111) obj.CurrentMode = localSetMode(obj,value);
Error in activateuimode (line 20) set(hManager,'CurrentMode',hMode);
Error in rotate3d>setState (line 319) activateuimode(fig,'');
Error in rotate3d (line 202) setState(hTarget,arg,getStyle(hFig));
Error in TransformApp/onAddImgClick (line 214) rotate3d off
Error in TransformApp>@(varargin)obj.onAddImgClick(varargin{:}) (line 52) 'Callback', @obj.onAddImgClick);
Error using uiwait (line 81) Error while evaluating UIControl Callback.
>>
Note that the application uses uiwait() and uiresume() to block the execution of the script that launches my application. I also tried h = rotate3d(); h.Enable = 'off'; but it produces the same error.
0 comentarios
Respuestas (3)
Sebastian
el 28 de Jun. de 2017
1 comentario
Márcio Marques
el 27 de Jul. de 2017
Hi Sebastian! I've got the same problem. do you have any answer?
Kfir G
el 30 de Dic. de 2019
A workaround for the issue is to add a dummy button and uimenu with the required tags (Works with matlab 2016b):
dummy_btn = uitoggletool(findall(ax.Parent,'type','uitoolbar'), 'tag','Exploration.Rotate','Visible','off');
dummy_menu = uimenu(ax.Parent, 'tag', 'figMenuRotate3D', 'Visible','off');
0 comentarios
Joel Berkson
el 5 de Jun. de 2024
I can confirm that this bug still has not been fixed 7 years later. Any other workarounds?
1 comentario
Matthias Fath
el 8 de Oct. de 2024
Hi Joel,
I stumbled across your message because i had another problem with rotate3d. I quickly checked the combination of pcshow and disabling rotate3d afterwards and it works just fine in my Matlab version. I am using 2024a Update 6, so maybe you could try updating your matlab to solve the problem.
Regards,
Matthias
Ver también
Categorías
Más información sobre Interactive Control and Callbacks en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!