Version (2.16 KB) by Jiro Doke
Get object properties in specified units without changing the Units property.


Updated 1 Sep 2016

View License

Editor's Note: This file was a File Exchange Pick of the Week

Have you ever created an object for your GUI using Normalized units, but wanted to get its position in Points to line up a text object according to the font size? Instead of SETting the Units property to Points, GETting the Position, and SETting the Units back to Normalized, just use getInUnits.
GETINUNITS Get object properties in specified units

V = GETINUNITS(H, PROP, UNITS) returns the object property in the specified UNITS. It will leave the 'Units' and 'FontUnits' property unchanged afterwards.

H is the handle of the object. If it is an M-element array of handles, the function will return an M-by-1 cell array. PROP can be a string or a cell array of strings. If it is a 1-by-N or N-by-1 cell array, the function will return an M-by-N cell array of values. UNITS can be a string or a cell array. If it is a cell array, then PROP must also be a cell array with the same size as UNITS, and each cell element of UNITS corresponds to a cell element of PROP.

V = GETINUNITS(H, PROP) is the same as GET(H, PROP)

V = GETINUNITS(H, 'Position', 'Pixels')
V = GETINUNITS(H, {'FontSize', 'Position'}, 'Normalized')
V = GETINUNITS(H, {'FontSize', 'Position'}, {'Points', 'Pixels'})

Cite As

Jiro Doke (2023). GETINUNITS (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R14SP2
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on Numeric Types in Help Center and MATLAB Answers

Inspired: SETPOS 1.2 - GETPOS 1.2

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Updated license

License update.

Fixes a bug that gives an error with Figures. I basically included a try..catch to check if FontUnits and Units properties exist or not.