Skip to content

Pivot implementation

Non-destructive hierarchy

The imported scene remains unchanged below an inverse offset group.

text
P = selected local pivot
T = outer model transform

pivot root:       T
content root:     translation(-P)
imported content: original transforms

A point originally at P becomes local zero under the content root and therefore lies on the outer rotation axis.

Position compensation

When changing from old pivot P₀ to new pivot P₁, the world-space visual location would change unless the outer model position is adjusted by the transformed pivot delta. The compensation accounts for current rotation and scale, not only a raw subtraction.

Sequence compensation

Each keyframe stores model position, rotation, and scale. The pivot utility calculates compensation independently for every keyframe so an existing motion path remains visually stable.

Bounds center

Bounds are computed from renderable geometry and transformed into the imported model-local coordinate space. Helpers are excluded so they do not recursively expand the box.

Released under the MIT License.