# Coordinate Space Trees

Each VisionPro image has an associated coordinate space tree defining the root space and any defined user spaces. VisionPro uses the coordinate space tree to track spatial transformations applied during image processing as well as map coordinates from root space to any defined user space and back again. The coordinate space tree for any image can be accessed through its CoordinateSpaceTree property.

Each user space in the space tree has a parent coordinate space related by one or more transformations. All user spaces can trace their ancestry back to the root space. Whenever a VisionPro tool modifies the pixels of an acquired image, it automatically updates the root space to reflect any changes in the location of image features. All user spaces, since they stem from the root space, are automatically updated to reflect the same changes.

Each user space in the space tree has a unique name which can be referenced in your vision application.

At any given time, one space within the coordinate space tree is designated as the selected space for a given image. The selected space is the coordinate system in which all VisionPro tools that operate on the image return results (such as locations and distances) and in which the tools interpret input data (such as regions of interest). You set the selected space for an image using the image's SelectedSpaceName property, either explicitly in your Visual Studio application or implicitly in your QuickBuild application.