public interface IGizmoTargetSomething the gizmo can move: a transform it can read and write.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
An interface rather than an entity, so that the gizmo's whole of its arithmetic is testable with no world, no renderer and no device — which is what makes "does dragging X by fifteen pixels move it the right distance" a unit test rather than a screenshot somebody looks at.
⚠ Whoever supplies the targets owns the undo entry, and Record is where that is written down. It used to be a hook on the viewport plus a type test beside it, which meant the viewport held a list of the exceptions to its own rule and a third kind of target was a third exception. A target knows what document it came out of and what its edit is called; nothing else does.
Fields and properties (4)
Vector3 PositionWhere it is, in world space.
Quaternion RotationHow it is turned, in world space.
Vector3 ScaleHow big it is, in its parent's space.
Matrix4x4 ParentToWorldIts parent's local-to-world matrix, or the identity for a root.
Methods (1)
Used by (11)
- EntityGizmoTargetVixen.Editor.SceneView
- GizmoDragVixen.Editor.SceneView
- MeshGizmoTargetVixen.Editor.SceneView
- PaneVixen.Editor.SceneView.Tests
- ProxyShapeGizmoTargetVixen.Editor.AssetEditors
- ProxyShapeViewVixen.Editor.AssetEditors
- SceneViewportVixen.Editor.SceneView
- StubTargetVixen.Editor.SceneView.Tests
- TransformGizmoVixen.Editor.SceneView
- TransformTargetsCommandVixen.Editor.SceneView
- ViewportLayoutVixen.Editor.SceneView