Drawpolygon not working with geoaxes
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Murat Panayirci
el 6 de Oct. de 2022
Comentada: Murat Panayirci
el 13 de Oct. de 2022
Hi,
I am developing a GUI with app designer, when I want to enable users to select a region interactively on a geoaxes. I am using the drawpolygon function, which does not seem to work with geoaxes (it works on a regular axis). I get following error:
Warning: Error occurred while executing the listener callback for event WindowMousePress defined for class matlab.ui.Figure:
Dot indexing is not supported for variables of this type.
Error in imageslib.internal.app.utilities.isAxesInteractionModeActive (line 17)
TF = ax.InteractionContainer.CurrentMode ~= "none";
Error in images.roi.internal.ROI/isModeManagerActive
Error in images.roi.internal.ROI/waitForButtonPressToBegin
Error in images.roi.internal.ROI
is drawpolygon not available for geoaxes or is there an option I need to set correctly for this axes type. Any help would be appreciated.
Thanks!
Murat
0 comentarios
Respuesta aceptada
Adam Danz
el 6 de Oct. de 2022
This is supported in the latest release, MATLAB R2022b.
The example below produced the results you described when run in R2022a but is functional in R2022b.
uif = uifigure();
gx = geoaxes(uif);
drawpolygon(gx)
3 comentarios
Adam Danz
el 12 de Oct. de 2022
Can you think of any workaround
Assuming it's not possible to update to 22b, you could replace the uifigure with a regular figure and it will work in 22a.
fig = figure();
gx = geoaxes(fig);
drawpolygon(gx)
If this is within an app, then it gets more complicated. You'd need to generate the figure outside of the app, using a regular figure as shown above. copyobj may come in handy to copy the entire axes from your uifigure to a regular figure. Then, when the drawpolygon actions are done, you could copy the results to the axes in your app and close the external figure.
Más respuestas (0)
Ver también
Categorías
Más información sobre Migrate GUIDE Apps 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!