Synopsis
- alignScopeToAxes()
- alignScopeToAxes(alignAxesSelector)
Parameters
- alignAxesSelector—selstr
- { x | y | z } — the world coordinate axis/axes to align to.
- { object.x | object.y | object.z } — The object coordinate axis/axes to align to.
Description
The alignScopeToAxes operation manipulates the scope, the pivot and the geometry attributes such that the scope's axes are parallel to the corresponding axis/axes selected with (alignAxesSelector). If no (alignAxesSelector) is specified, then world.xyz is used.After this operation, the scope.r and the scope.t vectors are zero and the geometry is projected to the new scope (i.e. stays at the same place in world coordinates).
If (alignAxesSelector) selects a single axis, the second axis is created as follows:
- world.x/object.x — The z axis is projected onto the world/object coordinates yz-plane.
- world.y/object.y — The x axis is projected to the world/object coordinates xz-plane.
- world.z/object.z — The x axis is then projected to the world coordinates xy-plane.
Related
Examples
The initial scene: The pivot (fat) is in the origin; the scope (yellow) contains a translation and a rotation.
| |
Applying alignScopeToAxes() removes the scope translation and rotation, rotates the pivot such that all pivot axes are parallel to the world coordinate axes and projects the geometry to the new scope such that it stays at the same place in world coordinates. Note that the pivot lies at a corner of the bounding box (which is the new scope)
| |
Using the y-axis variant only aligns the pivot to the y-axis.
|