reanimate/docs/gifs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Paul Gardiner ed1c0ba6c1
Hierarchical sprites and objects (#269)
* Separate sprite creation from adding to scene

This is work towards supporting hierarchical sprites and objects:
the Sprite data definition is updated to include it's generator and
a new function newSpritePart is added to create a sprite without
adding the generator to the scene, making it invisible. Later commits
will provide a way for sprites created by newSpritePart to be used
in the definitions of other sprites.

* Support use of one sprite within another

This is work towards supporting hierarchical sprites and objects.
A new function, renderSprite, is defined that exposes its generator
in the form of a Frame context that can be used in the definitions
of other sprites.

Some internal types have had to be changed to support renderSprite. The
frame context created by renderSprite runs the sprite's generator, and must
supply the scene duration to it, and so the frame type has had to be updated
also to be dependent on the scene duration. In turn, a sprite's effects
mapping needs to be able to interpret a frame context in the implementation
of spriteModify, and so the effects mapping has also had to be made
dependent on the scene duration.

* Support use of objects within hierarchical sprites

Allow use of objects as leaves within a hierarchically
defined sprite. Two new functions are added:

  The function newObjectPart creates an object, not immediately
  added to the scene, so invisible even after calls to oShow, and
  mainfesting only if used within the definition of a sprite.

  The function renderObject exposes the generator of the object's
  internal sprite in the form of a frame context that can be used
  in the definitions of other sprites.

* Add example script showing use of newObjectPart and renderObject

This is a slightly contrived example, chosen to show an animation that
is difficult to contruct other than hiearchically. Two strings are placed
one over the other. They are shown using oDraw which requires their being
Objects. The overlapping strings are faded out, which requires
opacity to be applied at the group level: fading each individually would
lead to the lower string becoming visible through the upper one as opacity
is decreased.
2022-06-02 15:40:56 +02:00
..
doc_addStatic.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_andThen.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_applyVar.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_augustP.gif Document the GeoJSON module. 2020-08-25 15:49:06 +08:00
doc_balloon.gif More API docs. 2020-08-27 11:13:45 +08:00
doc_bellS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_biolinum.gif Add a few more built-in font configurations. (#179) 2020-10-08 15:26:19 +08:00
doc_bonneP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_bottomleyP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_calligra.gif Support multiple latex configurations. (#173) 2020-10-01 14:26:45 +08:00
doc_cameraAttach.gif Write API documentation for cameras. 2020-08-25 18:16:25 +08:00
doc_cameraFocus.gif Write API documentation for cameras. 2020-08-25 18:16:25 +08:00
doc_cassiniP.gif Document the GeoJSON module. 2020-08-25 15:49:06 +08:00
doc_chainT.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_chalkduster.gif Support multiple latex configurations. (#173) 2020-10-01 14:26:45 +08:00
doc_circlePlot.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_cividis.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_collignonP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_constantS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_ctex.gif Fix ctex doc gif. 2020-07-20 17:39:12 +08:00
doc_cubicBezierS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_curveS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_cylindricalEqualAreaP.gif Document the GeoJSON module. 2020-08-25 15:49:06 +08:00
doc_destroySprite.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_drawBox.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_drawCircle.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_drawProgress.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_droidSans.gif Add a few more built-in font configurations. (#179) 2020-10-08 15:26:19 +08:00
doc_droidSerif.gif Add a few more built-in font configurations. (#179) 2020-10-08 15:26:19 +08:00
doc_eckert1P.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_eckert3P.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_eckert5P.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_equirectangularP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_fadeT.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_faheyP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_fork.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_foucautP.gif Document the GeoJSON module. 2020-08-25 15:49:06 +08:00
doc_fromToS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_githubIcon.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_githubWhiteIcon.gif Write more API documentation. 2020-08-25 16:38:29 +08:00
doc_greyscale.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_hammerP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_haskellLogo.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_helvet.gif Support multiple latex configurations. (#173) 2020-10-01 14:26:45 +08:00
doc_hsv.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_hsvComponents.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_hsvMatlab.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_inferno.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_jet.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_labComponents.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_lagrangeP.gif Document the GeoJSON module. 2020-08-25 15:49:06 +08:00
doc_lambertP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_latex.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_latexAlign.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_lchComponents.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_libertine.gif Support multiple latex configurations. (#173) 2020-10-01 14:26:45 +08:00
doc_linear.gif More API docs. 2020-08-27 11:13:45 +08:00
doc_magma.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_mapA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_mercatorP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_mkBackground.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_mkImage.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_mkText.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_mollweideP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_newSprite.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_newSpriteA'.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_newSpriteA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_newSpriteSVG.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_noto.gif Support multiple latex configurations. (#173) 2020-10-01 14:26:45 +08:00
doc_oDraw.gif Rewamp object effects. 2020-09-01 14:15:06 +08:00
doc_oGrow.gif cleanup (#166) 2020-09-19 22:18:21 +08:00
doc_oHideWith.gif cleanup (#166) 2020-09-19 22:18:21 +08:00
doc_orthoP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_oScaleIn.gif Rewamp object effects. 2020-09-01 14:15:06 +08:00
doc_oScaleOut.gif Rewamp object effects. 2020-09-01 14:15:06 +08:00
doc_oscillateS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_overlapT.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_parA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_parDropA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_parLoopA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_parula.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_pathify.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_pause.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_pauseAround.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_pauseAtBeginning.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_pauseAtEnd.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_plasma.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_play.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_playThenReverseA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_powerS.gif Don't build gh-pages for PRs. 2020-08-07 09:15:50 +08:00
doc_queryNow.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_rawLinear.gif More API docs. 2020-08-27 11:13:45 +08:00
doc_renderObject.gif Hierarchical sprites and objects (#269) 2022-06-02 15:40:56 +02:00
doc_repeatA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_reverseA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_reverseS.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_rgbComponents.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_rotationalTrajectory.gif Update stylish preferences. 2020-08-27 13:42:59 +08:00
doc_seqA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_signalA.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_simpleIcon.gif SimpleIcons.org external data set. (#178) 2020-10-08 15:26:02 +08:00
doc_simpleVar.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_sinebow.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_sinusoidalP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_slideDownT.gif Yet more haddock documentation. 2020-08-27 16:46:53 +08:00
doc_slideLeftT.gif Update doc gif. 2020-08-27 17:42:57 +08:00
doc_slideUpT.gif Yet more haddock documentation. 2020-08-27 16:46:53 +08:00
doc_smallEarth.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_spriteE.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_spriteMap.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_spriteScope.gif Polish object interface (#138) 2020-08-25 13:51:32 +08:00
doc_spriteTween.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_spriteVar.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_spriteZ.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_svgLogo.gif Switch back to stylish-haskell and enumerate imports. 2020-10-10 18:17:01 +08:00
doc_svgLogo2.gif Switch back to stylish-haskell and enumerate imports. 2020-10-10 18:17:01 +08:00
doc_ternaryPlot.gif Write more API documentation. 2020-08-25 16:38:29 +08:00
doc_turbo.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_unVar.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_viridis.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_wait.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_waitOn.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_wernerP.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_withViewBox.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_writeVar.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00
doc_xyzComponents.gif Reduce test fidelity from 50 frames to 10 frames. 2020-06-24 22:36:56 +08:00