Softanza
StartFrançais
Softanza
The library documents itself · Numeric & optimization

stzMathMotion

36 own methods · 6 forms written with extensions, listed under their method

the source: base/math/stzMathMotion.ring(opens in a new tab) · All classes · The area reference: Numeric & optimization

Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean

Examples: 1 come from the library's tests; 10 were composed from each method's signature and run for this page, on a fresh object, for example o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ]). 25 methods have none yet. Examples run on 2026-10-03 12:54 inside the library at commit 0e72e2e2c.

Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
the parameters ---------------------------------------------------------- a slider: a name the declaration mentions as {name}, its range, and where it stands now (the range's start when not said) 1 examples run
oM = StzMathMotionQ(:Function, [ :f = "{a} * sin(x)", :on = [ -6.3, 6.3 ], :mark = [ :extrema ], :maxmarks = 3 ])
oM.Param("a", 1, 3, 1)
? oM.Value("a")
#--> 1
library testQCSXTZZZIBWU
Params
(no comment in the source: the name reads as a sentence) paramsno extension
Value
(no comment in the source: the name reads as a sentence) valueno extension
Set
MOVE A SLIDER: clamped to its range; the computed half follows on the next frame, the solved half on the next SettleQCSXTZZZIBWU
IsDirty
(no comment in the source: the name reads as a sentence) is dirty
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.IsDirty()
#--> 1
composed from the signature, run for this page
no extension
Resolved
the solved half: the figure where the parameters last settled ---------- the declaration with every {name} replaced by its value
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? @@( o1.Resolved() )
#--> [ [ "f", "{a} * x" ], [ "on", [ 0, 1 ] ] ]
composed from the signature, run for this page
no extension
Settle
REBUILD AND RE-SOLVE the figure for the parameters as they stand now, and keep what it cost -- the solved half's numberQCSXTZZZIBWU
SettleMs
(no comment in the source: the name reads as a sentence) settle ms
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.SettleMs()
#--> 0
composed from the signature, run for this page
no extension
Figure
the settled figure -- settled first if it never wasno extension
LiveCurve
the live samples of the curve on the settled figure's window, as pixel pieces: [ [ x1, y1, x2, y2, ... ], ... ], broken where the function leaves the window or is not finiteno extension
LiveSamples
the live samples in the author's units, for a check: [ [ x, y ], ... ]no extension
DrawLiveOn
THE LIVE CURVE DRAWN INTO A CANVAS, cleared first: the overlay the window draws over the settled picture. Keeps what it cost.no extension
Counts
the counts a gate asserts the frame's structure by: settles, tape calls and flushes since the motion was made
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? @@( o1.Counts() )
#--> [ [ "settles", 0 ], [ "tapecalls", 0 ], [ "flushes", 0 ] ]
composed from the signature, run for this page
no extension
FrameMs
(no comment in the source: the name reads as a sentence) frame ms
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.FrameMs()
#--> 0
composed from the signature, run for this page
no extension
LiveSampleCount
(no comment in the source: the name reads as a sentence) live sample count
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.LiveSampleCount()
#--> 240
composed from the signature, run for this page
no extension
Frame
a frame, offscreen: the same composition the window shows -------------- a fresh canvas with the settled picture and the live curve on it; the caller frees it. The overlay path of the window draws the two as separate layers; here they are one canvas, since a saved frame is one picture.no extension
FrameSVG
(no comment in the source: the name reads as a sentence) frame svgno extension
FramePNG
(no comment in the source: the name reads as a sentence) frame pngno extension
Play
the window loop ---------------------------------------------------------- THE PLAYER: the settled picture retained in one canvas, the live curve redrawn each frame in an overlay; the first parameter on left/right, the second on up/down, a hundredth of its range per frame held; the picture settles when no key is held and something moved. Escape closes.no extension
State
declared STATES ---------------------------------------------------------- A STATE is a caption and the acts that reach it from the state before. An act is a list led by its verb: [ :DragTo, "A.icon", x, y ] a free shape to a place [ :DragBy, "A.icon", dx, dy ] the same, from where it stands [ :SetData, "fr", "ymax", 2 ] a datum into the substance [ :SetTheme, "dark" ] the picture's theme [ :Set, "a", 2 ] a parameter (a :Function motion) A state with no act is the picture as it stands -- the opening frame.QCSXTZZZIBWU
StateFact
a fact the caption of the LAST declared state shows as {hole}: bound now, computed when the frame is closed, on the picture at that stateQCSXTZZZIBWU
States
(no comment in the source: the name reads as a sentence) statesno extension
NumberOfStates
(no comment in the source: the name reads as a sentence) number of states
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.NumberOfStates()
#--> 0
composed from the signature, run for this page
no extension
CaptionOf
(no comment in the source: the name reads as a sentence) caption ofno extension
ActsOf
(no comment in the source: the name reads as a sentence) acts ofno extension
FactsOf
(no comment in the source: the name reads as a sentence) facts ofno extension
Applied
(no comment in the source: the name reads as a sentence) applied
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.Applied()
#--> 0
composed from the signature, run for this page
no extension
ApplyMs
(no comment in the source: the name reads as a sentence) apply ms
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.ApplyMs()
#--> 0
composed from the signature, run for this page
no extension
Story
(no comment in the source: the name reads as a sentence) storyno extension
Picture
the picture as it stands: the motion's own copy for a :Diagram, the settled figure's diagram for a :Function -- a copy, for readingno extension
Apply
THE LIVE PASS: the acts of one state, on the motion's own picture. States are steps, so state n is reached from state n-1; a caller that jumps is asking for the acts of n from wherever the picture stands, which is what it gets and what Applied() then says.QCSXTZZZIBWU
ApplyAll
(no comment in the source: the name reads as a sentence) apply allno extension
ExportTo
the export: a storyboard driven by the same acts ------------------------ EVERY STATE A FRAME. The storyboard takes its own copy of the picture from where it stands now, replays each state's acts on that copy through its own Act (so the frame it closes is the picture AFTER the acts), binds each fact to be computed on that frame, writes the frame as a PNG in the folio, and the narration beside them. A :Function motion settles per state and hands each settled figure in as a frame; its parameters are put back afterwards, so the export leaves the motion where it found it in both cases.no extension
PlayStates
the player of states ------------------------------------------------------ each state applied and held on the window for pnDwellMs; Right or Space advance early, Escape closes; the last state holds until Escape. A :Function motion drawn live composes its frame, any other draws its picture as it stands.no extension
Why
(no comment in the source: the name reads as a sentence) why
composed example
o1 = new stzMathMotion(:Function, [ :f = "{a} * x", :on = [ 0, 1 ] ])
? o1.Why()
#--> a motion over a function figure with 0 parameter(s):; moved since it settled
composed from the signature, run for this page
no extension