incremental, nesting aware hold on
Description
Switches hold on for the axes ax and returns a guard object. As soon as the guard is deleted - usually when the calling function returns, also in case of an error - the previous hold state is restored. Calls may be nested: only the outermost holdOn actually changes the axes.
Note that the output has to be assigned to a variable. Calling holdOn as a bare statement leaves the guard in ans, where it is released at an unpredictable point - as soon as anything else overwrites ans.
A function that hands out handles to its nested functions - typically as figure callbacks - keeps its whole workspace alive for as long as those handles exist, and with it the guard. Release it explicitly with clear hG in that case.
Syntax
hG = holdOn(ax); % hold ax until hG is cleared
[hG,washeld] = holdOn(ax); % also report the previous hold stateInput
| ax | axes handle(s) |
Output
| guard | @onCleanup object, keep it alive as long as hold is required |
| washeld | logical, was ax held before this call |
See also
Citing this page.
This page is part of the documentation of
MTEX, a free and open
source MATLAB toolbox for analyzing and modeling crystallographic textures.
It was written by The MTEX Developers and is published at
https://mtex-toolbox.github.io/holdOn.html.
If you use MTEX, or reuse text or figures from this page, in your research,
please cite
F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63
BibTeX
@article{bachmann2010mtex,
author = {F. Bachmann and R. Hielscher and H. Schaeben},
title = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
journal = {Solid State Phenomena},
volume = {160},
pages = {63-68},
year = {2010},
doi = {10.4028/www.scientific.net/SSP.160.63},
url = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}
Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.