PoseJoint class final

Keys joint's own current path component — translation, rotation or scale, read off its live local transform rather than taken as an argument — onto clip clipIndex at frame. anim-05's own row: an auto-key, for a gizmo drag that poses a joint and then asks the pose it already reached to be remembered.

Three calls at the same frame, wrapped in one ModelHistory.transaction, read back as one key and one step — from two mechanisms neither of which PoseJoint has to implement itself. KeyTable.setKey already replaces the key at a repeated time rather than adding a second one, which is the "one key"; ModelHistory.transaction already folds every command run inside it into the step the first one opened, which is the "one step". A joint moved three times mid-drag with frame unchanged between calls is exactly that shape — the last call's pose is the one that survives, the same way it would if only that call had ever run.

Inheritance

Constructors

PoseJoint({required int joint, required AnimationPath path, required int clipIndex, required int frame})
const

Properties

arguments → Map<String, Object?>
The arguments, as the journal and an agent see them.
no setteroverride
clipIndex → int
final
frame → int
final
hashCode → int
The hash code for this object.
no setterinherited
hints → Map<String, ParamHint>
What a control for one of arguments should look like, keyed the same way — a step, a range, a unit, or which of the four kinds it even is.
no setterinherited
isJournaled → bool
Whether a successful run of this should be written to whichever CommandJournal a ModelHistory has attached, when one is. True for every command except ReplaceDocument — see that class's own doc comment for why a line naming it could never be read back.
no setterinherited
joint → int
final
name → String
The name this is written down and looked up under. Stable: it is in files and in an agent's tool table, and renaming one breaks both.
no setteroverride
path → AnimationPath
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
says → String
What the history offers to undo, in words a person recognises. Present tense and lower case — the interface puts it after "Undo".
no setteroverride

Methods

apply(ModelProject project, ProjectSelection selection) → Outcome
Applies this to project, with selection as it was when the command was made.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, Object?>
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited