20 Experimental Derived Visuals
animate/experimental contains lower-level escape hatches. New scene dependencies should normally use relation-visual from animate, which declares its inputs and cacheability. A derived Visual remains useful when an author intentionally needs a pure arbitrary resolver over a sampled scene state.
procedure
(derived-visual template resolver) → derived-visual?
template : visual? resolver : (-> derived-context? visual? visual?)
procedure
(derived-visual? value) → boolean?
value : any/c
procedure
(derived-context? value) → boolean?
value : any/c
procedure
(derived-context-value-has? context id) → boolean?
context : derived-context? id : (or/c symbol? scene-parameter?)
procedure
(derived-context-value-ref context id) → any/c
context : derived-context? id : (or/c symbol? scene-parameter?)
procedure
(derived-context-visual-has? context id) → boolean?
context : derived-context? id : (or/c symbol? visual-path?)
procedure
(derived-context-visual-ref context id) → visual?
context : derived-context? id : (or/c symbol? visual-path?)
Limitation: a derived resolver is an arbitrary procedure, so it is memory-only for persistent caching unless its enclosing project supplies an explicit cache identity.