gaanim 0.17.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- gaanim/__init__.py +428 -0
- gaanim/_docs/apendices/glosario.typ +153 -0
- gaanim/_docs/apendices/novedades.typ +3926 -0
- gaanim/_docs/apendices/solucion-de-problemas.typ +134 -0
- gaanim/_docs/ejemplos/index.typ +14 -0
- gaanim/_docs/ejemplos/temas.typ +17 -0
- gaanim/_docs/empezar/como-piensa-gaanim.typ +304 -0
- gaanim/_docs/empezar/instalacion.typ +250 -0
- gaanim/_docs/empezar/playground.typ +279 -0
- gaanim/_docs/empezar/primera-animacion.typ +173 -0
- gaanim/_docs/guias/camara-y-3d.typ +972 -0
- gaanim/_docs/guias/capturas-y-comparacion.typ +165 -0
- gaanim/_docs/guias/compartir.typ +613 -0
- gaanim/_docs/guias/efectos.typ +280 -0
- gaanim/_docs/guias/ensayar-y-grabar.typ +290 -0
- gaanim/_docs/guias/layout.typ +498 -0
- gaanim/_docs/guias/movimiento.typ +476 -0
- gaanim/_docs/guias/personajes.typ +122 -0
- gaanim/_docs/guias/presentaciones.typ +628 -0
- gaanim/_docs/guias/proyectos.typ +394 -0
- gaanim/_docs/guias/reactividad.typ +319 -0
- gaanim/_docs/guias/tipografia-cinetica.typ +265 -0
- gaanim/_docs/guias/transiciones.typ +294 -0
- gaanim/_docs/home.typ +190 -0
- gaanim/_docs/index.typ +75 -0
- gaanim/_docs/publico/anatomia.typ +250 -0
- gaanim/_docs/publico/estilos.typ +438 -0
- gaanim/_docs/publico/index.typ +94 -0
- gaanim/_docs/publico/preguntas.typ +125 -0
- gaanim/_docs/publico/presentar.typ +182 -0
- gaanim/_docs/publico/primera-encuesta.typ +128 -0
- gaanim/_docs/publico/zonas-vivas.typ +171 -0
- gaanim/_docs/redirects.typ +58 -0
- gaanim/_docs/referencia/animations.typ +3273 -0
- gaanim/_docs/referencia/assets.typ +246 -0
- gaanim/_docs/referencia/audio.typ +699 -0
- gaanim/_docs/referencia/cli.typ +908 -0
- gaanim/_docs/referencia/diapositivas.typ +258 -0
- gaanim/_docs/referencia/drawable.typ +1613 -0
- gaanim/_docs/referencia/gaanim-toml.typ +214 -0
- gaanim/_docs/referencia/geometria.typ +1709 -0
- gaanim/_docs/referencia/index.typ +77 -0
- gaanim/_docs/referencia/layout.typ +662 -0
- gaanim/_docs/referencia/matrices.typ +278 -0
- gaanim/_docs/referencia/mecanica.typ +408 -0
- gaanim/_docs/referencia/medios.typ +454 -0
- gaanim/_docs/referencia/publico.typ +470 -0
- gaanim/_docs/referencia/scene.typ +2274 -0
- gaanim/_docs/referencia/text.typ +911 -0
- gaanim/_docs/referencia/themes.typ +1265 -0
- gaanim/_docs/referencia/visualization.typ +1395 -0
- gaanim/_docs/tutorial/01-antes-de-empezar.typ +111 -0
- gaanim/_docs/tutorial/02-primera-escena.typ +148 -0
- gaanim/_docs/tutorial/03-objetos-estilo.typ +142 -0
- gaanim/_docs/tutorial/04-animar-tiempo.typ +150 -0
- gaanim/_docs/tutorial/05-componer-explicar.typ +154 -0
- gaanim/_docs/tutorial/06-reactividad.typ +167 -0
- gaanim/_docs/tutorial/07-circulo-al-seno.typ +235 -0
- gaanim/_docs/tutorial/08-terminar-proyecto.typ +154 -0
- gaanim/_docs/tutorial/circulo_al_seno.py +87 -0
- gaanim/_type_aliases.py +146 -0
- gaanim/animation_types.py +49 -0
- gaanim/audio_viz.py +248 -0
- gaanim/colors.py +361 -0
- gaanim/colors.pyi +37 -0
- gaanim/gaanim_core.pyi +13257 -0
- gaanim/live.py +1394 -0
- gaanim/matrix.py +605 -0
- gaanim/matrix.pyi +144 -0
- gaanim/pointer.py +229 -0
- gaanim/pointer.pyi +49 -0
- gaanim/py.typed +0 -0
- gaanim/questions.py +245 -0
- gaanim/sections.py +777 -0
- gaanim/sections.pyi +303 -0
- gaanim/templates.py +177 -0
- gaanim/templates.pyi +89 -0
- gaanim/timeline.py +248 -0
- gaanim/timeline.pyi +59 -0
- gaanim-0.17.0.dist-info/METADATA +63 -0
- gaanim-0.17.0.dist-info/RECORD +84 -0
- gaanim-0.17.0.dist-info/WHEEL +4 -0
- gaanim-0.17.0.dist-info/extra_metadata/LICENSE-APACHE +176 -0
- gaanim-0.17.0.dist-info/extra_metadata/LICENSE-MIT +21 -0
gaanim/__init__.py
ADDED
|
@@ -0,0 +1,428 @@
|
|
|
1
|
+
"""Gaanim — GPU-accelerated vector animation engine."""
|
|
2
|
+
|
|
3
|
+
import sys
|
|
4
|
+
import warnings
|
|
5
|
+
|
|
6
|
+
if f"{__name__}.gaanim_core" not in sys.modules:
|
|
7
|
+
raise RuntimeError(
|
|
8
|
+
"The `gaanim` wheel only provides authoring helpers and type information. "
|
|
9
|
+
"Run animation scripts with `gaanim <script.py>` or open them in the Gaanim editor."
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
# The stub declares type aliases such as Paint on gaanim_core, but the native
|
|
13
|
+
# module only defines classes: give it the aliases before anything imports them.
|
|
14
|
+
from . import _type_aliases
|
|
15
|
+
|
|
16
|
+
_type_aliases.install(sys.modules[f"{__name__}.gaanim_core"])
|
|
17
|
+
|
|
18
|
+
from . import colors
|
|
19
|
+
from .gaanim_core import (
|
|
20
|
+
Anchor,
|
|
21
|
+
AnchorPoint,
|
|
22
|
+
PointRef,
|
|
23
|
+
Direction,
|
|
24
|
+
Box,
|
|
25
|
+
BoxStyle,
|
|
26
|
+
Zone,
|
|
27
|
+
ZoneSet,
|
|
28
|
+
Zones,
|
|
29
|
+
LayoutExpression,
|
|
30
|
+
LayoutConstraint,
|
|
31
|
+
ConstraintSet,
|
|
32
|
+
LayoutOwnershipError,
|
|
33
|
+
BLACK,
|
|
34
|
+
BLUE,
|
|
35
|
+
CORAL,
|
|
36
|
+
CYAN,
|
|
37
|
+
GOLD,
|
|
38
|
+
GRAY,
|
|
39
|
+
GREEN,
|
|
40
|
+
NAVY,
|
|
41
|
+
ORANGE,
|
|
42
|
+
PINK,
|
|
43
|
+
PURPLE,
|
|
44
|
+
RED,
|
|
45
|
+
TEAL,
|
|
46
|
+
WHITE,
|
|
47
|
+
YELLOW,
|
|
48
|
+
Anim,
|
|
49
|
+
Easing,
|
|
50
|
+
EasingCurve,
|
|
51
|
+
Audio,
|
|
52
|
+
AudioData,
|
|
53
|
+
AudioTempo,
|
|
54
|
+
Voiceover,
|
|
55
|
+
Composition,
|
|
56
|
+
Schedule,
|
|
57
|
+
ScheduleEntry,
|
|
58
|
+
parallel,
|
|
59
|
+
sequence,
|
|
60
|
+
stagger,
|
|
61
|
+
quantity,
|
|
62
|
+
distribute,
|
|
63
|
+
label,
|
|
64
|
+
magic_move,
|
|
65
|
+
Color,
|
|
66
|
+
ColorMap,
|
|
67
|
+
Palette,
|
|
68
|
+
Brush,
|
|
69
|
+
Background,
|
|
70
|
+
ColorLike,
|
|
71
|
+
ColorMapLike,
|
|
72
|
+
PaletteLike,
|
|
73
|
+
Paint,
|
|
74
|
+
BackgroundLike,
|
|
75
|
+
Distribution,
|
|
76
|
+
Emitter,
|
|
77
|
+
PostProcess,
|
|
78
|
+
Camera,
|
|
79
|
+
CameraState,
|
|
80
|
+
CameraConstraint,
|
|
81
|
+
SceneStop,
|
|
82
|
+
Bounds,
|
|
83
|
+
SceneMarker,
|
|
84
|
+
Theme,
|
|
85
|
+
Style,
|
|
86
|
+
StrokeStyle,
|
|
87
|
+
AxesStyle,
|
|
88
|
+
Drawable,
|
|
89
|
+
Image,
|
|
90
|
+
Video,
|
|
91
|
+
VideoSegment,
|
|
92
|
+
Lottie,
|
|
93
|
+
Dimension,
|
|
94
|
+
AngleDimension,
|
|
95
|
+
ForceVector,
|
|
96
|
+
Support,
|
|
97
|
+
SurroundingRect,
|
|
98
|
+
ParallaxLayer,
|
|
99
|
+
Material3D,
|
|
100
|
+
Primitive3D,
|
|
101
|
+
Axonometric,
|
|
102
|
+
Text,
|
|
103
|
+
TextAnchor,
|
|
104
|
+
TextPart,
|
|
105
|
+
TextParts,
|
|
106
|
+
TextStyle,
|
|
107
|
+
TextFlow,
|
|
108
|
+
TextSelection,
|
|
109
|
+
TextSelectionAnimation,
|
|
110
|
+
TextQuery,
|
|
111
|
+
TextAnimator,
|
|
112
|
+
TextAnimatorAnimation,
|
|
113
|
+
PathModifiers,
|
|
114
|
+
Annotations,
|
|
115
|
+
PathModifier,
|
|
116
|
+
PathModifierAnimation,
|
|
117
|
+
part,
|
|
118
|
+
parts,
|
|
119
|
+
Transition,
|
|
120
|
+
Overlay,
|
|
121
|
+
Updater,
|
|
122
|
+
Falloff,
|
|
123
|
+
FalloffColor,
|
|
124
|
+
Axis,
|
|
125
|
+
Scale,
|
|
126
|
+
Field,
|
|
127
|
+
Value,
|
|
128
|
+
Guide,
|
|
129
|
+
ChartSpec,
|
|
130
|
+
Chart,
|
|
131
|
+
Parameter,
|
|
132
|
+
Poll,
|
|
133
|
+
Leaderboard,
|
|
134
|
+
Audience,
|
|
135
|
+
Teams,
|
|
136
|
+
Condition,
|
|
137
|
+
Character,
|
|
138
|
+
LiveZone,
|
|
139
|
+
Readout,
|
|
140
|
+
Variable,
|
|
141
|
+
RollingNumber,
|
|
142
|
+
ProgressRing,
|
|
143
|
+
BarRace,
|
|
144
|
+
BarRaceAnimation,
|
|
145
|
+
Computed,
|
|
146
|
+
Random,
|
|
147
|
+
TimeInput,
|
|
148
|
+
computed,
|
|
149
|
+
deg,
|
|
150
|
+
CoordinateRef,
|
|
151
|
+
CoordinateSpace,
|
|
152
|
+
CoordinateSpace3D,
|
|
153
|
+
VectorField,
|
|
154
|
+
ArrowVectorField,
|
|
155
|
+
StreamLines,
|
|
156
|
+
FlowParticles,
|
|
157
|
+
Cartesian2D,
|
|
158
|
+
Cartesian3D,
|
|
159
|
+
NumberLine,
|
|
160
|
+
PolarSpace,
|
|
161
|
+
DataTable,
|
|
162
|
+
DataSource,
|
|
163
|
+
Geometry,
|
|
164
|
+
Typography,
|
|
165
|
+
LayoutBuilder,
|
|
166
|
+
MediaLibrary,
|
|
167
|
+
UI,
|
|
168
|
+
Visualization,
|
|
169
|
+
SlideKit,
|
|
170
|
+
Mechanics,
|
|
171
|
+
Fx,
|
|
172
|
+
AssetManager,
|
|
173
|
+
Scene,
|
|
174
|
+
Segment,
|
|
175
|
+
)
|
|
176
|
+
|
|
177
|
+
# Keep the semantic complex-space name available even when an embedding host
|
|
178
|
+
# has an older abi3 module already loaded in-process.
|
|
179
|
+
ComplexSpace = CoordinateSpace
|
|
180
|
+
from .sections import (
|
|
181
|
+
Agenda,
|
|
182
|
+
NavigationEntry,
|
|
183
|
+
NavigationState,
|
|
184
|
+
ProgressRail,
|
|
185
|
+
Section,
|
|
186
|
+
SectionLike,
|
|
187
|
+
SectionProgress,
|
|
188
|
+
SectionStep,
|
|
189
|
+
SectionTarget,
|
|
190
|
+
SegmentCamera,
|
|
191
|
+
)
|
|
192
|
+
from .templates import (
|
|
193
|
+
comparison,
|
|
194
|
+
credits,
|
|
195
|
+
component,
|
|
196
|
+
Component,
|
|
197
|
+
lecture,
|
|
198
|
+
lower_third,
|
|
199
|
+
minimal,
|
|
200
|
+
title_slide,
|
|
201
|
+
vertical_short,
|
|
202
|
+
)
|
|
203
|
+
from .animation_types import AnimationChannel, CustomAnimationValues, Playable, ScalarSource
|
|
204
|
+
from .questions import Question, QuestionError, load_questions
|
|
205
|
+
from .pointer import Pointer, PointerAnimator
|
|
206
|
+
from .timeline import Timeline, TimelineEvent
|
|
207
|
+
from .matrix import (
|
|
208
|
+
Matrix,
|
|
209
|
+
MatrixAlgebraError,
|
|
210
|
+
MatrixDerivation,
|
|
211
|
+
MatrixEntry,
|
|
212
|
+
MatrixSelection,
|
|
213
|
+
MatrixSelectionAnimation,
|
|
214
|
+
MatrixStep,
|
|
215
|
+
)
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
def Canvas(*args, **kwargs):
|
|
219
|
+
"""Deprecated compatibility constructor; use :class:`Scene` instead."""
|
|
220
|
+
warnings.warn(
|
|
221
|
+
"Canvas is deprecated as the animation facade; use Scene instead. "
|
|
222
|
+
"Use scene.canvas for viewport configuration.",
|
|
223
|
+
DeprecationWarning,
|
|
224
|
+
stacklevel=2,
|
|
225
|
+
)
|
|
226
|
+
return Scene(*args, **kwargs)
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
__all__ = [
|
|
230
|
+
"Section",
|
|
231
|
+
"SectionStep",
|
|
232
|
+
"SectionProgress",
|
|
233
|
+
"SectionLike",
|
|
234
|
+
"SectionTarget",
|
|
235
|
+
"SegmentCamera",
|
|
236
|
+
"Agenda",
|
|
237
|
+
"NavigationEntry",
|
|
238
|
+
"NavigationState",
|
|
239
|
+
"ProgressRail",
|
|
240
|
+
"AnimationChannel",
|
|
241
|
+
"CustomAnimationValues",
|
|
242
|
+
"Playable",
|
|
243
|
+
"ScalarSource",
|
|
244
|
+
"Scene",
|
|
245
|
+
"Geometry",
|
|
246
|
+
"Typography",
|
|
247
|
+
"LayoutBuilder",
|
|
248
|
+
"MediaLibrary",
|
|
249
|
+
"UI",
|
|
250
|
+
"Visualization",
|
|
251
|
+
"SlideKit",
|
|
252
|
+
"Mechanics",
|
|
253
|
+
"Fx",
|
|
254
|
+
"AssetManager",
|
|
255
|
+
"Segment",
|
|
256
|
+
"Canvas",
|
|
257
|
+
"Composition",
|
|
258
|
+
"Schedule",
|
|
259
|
+
"ScheduleEntry",
|
|
260
|
+
"parallel",
|
|
261
|
+
"sequence",
|
|
262
|
+
"stagger",
|
|
263
|
+
"quantity",
|
|
264
|
+
"distribute",
|
|
265
|
+
"label",
|
|
266
|
+
"magic_move",
|
|
267
|
+
"Matrix",
|
|
268
|
+
"Pointer",
|
|
269
|
+
"PointerAnimator",
|
|
270
|
+
|
|
271
|
+
"Timeline",
|
|
272
|
+
"TimelineEvent",
|
|
273
|
+
"MatrixEntry",
|
|
274
|
+
"MatrixSelection",
|
|
275
|
+
"MatrixSelectionAnimation",
|
|
276
|
+
"MatrixStep",
|
|
277
|
+
"MatrixDerivation",
|
|
278
|
+
"MatrixAlgebraError",
|
|
279
|
+
"Drawable",
|
|
280
|
+
"Image",
|
|
281
|
+
"Video",
|
|
282
|
+
"VideoSegment",
|
|
283
|
+
"Lottie",
|
|
284
|
+
"Dimension",
|
|
285
|
+
"AngleDimension",
|
|
286
|
+
"ForceVector",
|
|
287
|
+
"Support",
|
|
288
|
+
"SurroundingRect",
|
|
289
|
+
"ParallaxLayer",
|
|
290
|
+
"Material3D",
|
|
291
|
+
"Primitive3D",
|
|
292
|
+
"Axonometric",
|
|
293
|
+
"Text",
|
|
294
|
+
"TextAnchor",
|
|
295
|
+
"TextPart",
|
|
296
|
+
"TextParts",
|
|
297
|
+
"TextStyle",
|
|
298
|
+
"TextFlow",
|
|
299
|
+
"TextSelection",
|
|
300
|
+
"TextSelectionAnimation",
|
|
301
|
+
"TextAnimator",
|
|
302
|
+
"TextAnimatorAnimation",
|
|
303
|
+
"PathModifiers",
|
|
304
|
+
"Annotations",
|
|
305
|
+
"PathModifier",
|
|
306
|
+
"PathModifierAnimation",
|
|
307
|
+
"TextQuery",
|
|
308
|
+
"part",
|
|
309
|
+
"parts",
|
|
310
|
+
"Anim",
|
|
311
|
+
"Easing",
|
|
312
|
+
"EasingCurve",
|
|
313
|
+
"Audio",
|
|
314
|
+
"AudioData",
|
|
315
|
+
"AudioTempo",
|
|
316
|
+
"Voiceover",
|
|
317
|
+
"Transition",
|
|
318
|
+
"Overlay",
|
|
319
|
+
"Color",
|
|
320
|
+
"ColorMap",
|
|
321
|
+
"Palette",
|
|
322
|
+
"Brush",
|
|
323
|
+
"Background",
|
|
324
|
+
"ColorLike",
|
|
325
|
+
"ColorMapLike",
|
|
326
|
+
"PaletteLike",
|
|
327
|
+
"Paint",
|
|
328
|
+
"BackgroundLike",
|
|
329
|
+
"Distribution",
|
|
330
|
+
"Emitter",
|
|
331
|
+
"PostProcess",
|
|
332
|
+
"Camera",
|
|
333
|
+
"CameraState",
|
|
334
|
+
"CameraConstraint",
|
|
335
|
+
"SceneStop",
|
|
336
|
+
"Bounds",
|
|
337
|
+
"SceneMarker",
|
|
338
|
+
"Theme",
|
|
339
|
+
"Style",
|
|
340
|
+
"StrokeStyle",
|
|
341
|
+
"AxesStyle",
|
|
342
|
+
"colors",
|
|
343
|
+
"Anchor",
|
|
344
|
+
"AnchorPoint",
|
|
345
|
+
"PointRef",
|
|
346
|
+
"Direction",
|
|
347
|
+
"Box",
|
|
348
|
+
"BoxStyle",
|
|
349
|
+
"Zone",
|
|
350
|
+
"ZoneSet",
|
|
351
|
+
"Zones",
|
|
352
|
+
"LayoutExpression",
|
|
353
|
+
"LayoutConstraint",
|
|
354
|
+
"ConstraintSet",
|
|
355
|
+
"LayoutOwnershipError",
|
|
356
|
+
"component",
|
|
357
|
+
"Component",
|
|
358
|
+
"title_slide",
|
|
359
|
+
"lecture",
|
|
360
|
+
"comparison",
|
|
361
|
+
"vertical_short",
|
|
362
|
+
"minimal",
|
|
363
|
+
"lower_third",
|
|
364
|
+
"credits",
|
|
365
|
+
"Question",
|
|
366
|
+
"QuestionError",
|
|
367
|
+
"load_questions",
|
|
368
|
+
"Updater",
|
|
369
|
+
"Falloff",
|
|
370
|
+
"FalloffColor",
|
|
371
|
+
"Axis",
|
|
372
|
+
"Scale",
|
|
373
|
+
"Field",
|
|
374
|
+
"Value",
|
|
375
|
+
"Guide",
|
|
376
|
+
"ChartSpec",
|
|
377
|
+
"Chart",
|
|
378
|
+
"Parameter",
|
|
379
|
+
"Poll",
|
|
380
|
+
"Leaderboard",
|
|
381
|
+
"Audience",
|
|
382
|
+
"Teams",
|
|
383
|
+
"Condition",
|
|
384
|
+
"Character",
|
|
385
|
+
"LiveZone",
|
|
386
|
+
"Readout",
|
|
387
|
+
"Variable",
|
|
388
|
+
"RollingNumber",
|
|
389
|
+
"ProgressRing",
|
|
390
|
+
"BarRace",
|
|
391
|
+
"BarRaceAnimation",
|
|
392
|
+
"Computed",
|
|
393
|
+
"Random",
|
|
394
|
+
"TimeInput",
|
|
395
|
+
"computed",
|
|
396
|
+
"deg",
|
|
397
|
+
"CoordinateRef",
|
|
398
|
+
"CoordinateSpace",
|
|
399
|
+
"CoordinateSpace3D",
|
|
400
|
+
"VectorField",
|
|
401
|
+
"ArrowVectorField",
|
|
402
|
+
"StreamLines",
|
|
403
|
+
"FlowParticles",
|
|
404
|
+
"Cartesian2D",
|
|
405
|
+
"Cartesian3D",
|
|
406
|
+
"ComplexSpace",
|
|
407
|
+
"NumberLine",
|
|
408
|
+
"PolarSpace",
|
|
409
|
+
"DataTable",
|
|
410
|
+
"DataSource",
|
|
411
|
+
"GOLD",
|
|
412
|
+
"CORAL",
|
|
413
|
+
"BLUE",
|
|
414
|
+
"WHITE",
|
|
415
|
+
"BLACK",
|
|
416
|
+
"RED",
|
|
417
|
+
"GREEN",
|
|
418
|
+
"YELLOW",
|
|
419
|
+
"ORANGE",
|
|
420
|
+
"PURPLE",
|
|
421
|
+
"PINK",
|
|
422
|
+
"GRAY",
|
|
423
|
+
"CYAN",
|
|
424
|
+
"NAVY",
|
|
425
|
+
"TEAL",
|
|
426
|
+
]
|
|
427
|
+
|
|
428
|
+
__version__ = "0.17.0"
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
#import "../../components/section.typ": docs-chapter
|
|
2
|
+
|
|
3
|
+
#show: docs-chapter.with(
|
|
4
|
+
title: "Glosario",
|
|
5
|
+
description: "Los términos que usa esta documentación y el nombre que tienen en la API",
|
|
6
|
+
route: "/apendices/glosario/",
|
|
7
|
+
)
|
|
8
|
+
|
|
9
|
+
Esta documentación explica en español y conserva en inglés los nombres de la
|
|
10
|
+
API. Aquí tienes cada término con el identificador que le corresponde en el
|
|
11
|
+
código.
|
|
12
|
+
|
|
13
|
+
/ Ancla (`Anchor`, `anchor_point`): uno de los nueve puntos de referencia de
|
|
14
|
+
la caja de un objeto (`Anchor.CENTER`, `Anchor.TOP_LEFT`…). Sirve para
|
|
15
|
+
colocar objetos (`move_to(x, y, anchor=...)`) y, con
|
|
16
|
+
`objeto.anchor_point(...)`, como extremo que acompaña al objeto cuando se
|
|
17
|
+
mueve.
|
|
18
|
+
|
|
19
|
+
/ Animación (`Anim`): la descripción de un cambio en el tiempo, como
|
|
20
|
+
`circle.animate.move_to(2, 0)` con `.duration(1.0)`. No hace nada hasta que la
|
|
21
|
+
pasas a `scene.play([...])`.
|
|
22
|
+
|
|
23
|
+
/ `.animate`: propiedad de solo lectura de cada handle que ofrece los mismos
|
|
24
|
+
métodos que los cambios inmediatos, pero devuelve animaciones.
|
|
25
|
+
|
|
26
|
+
/ Área segura (`within="safe"`): el fotograma menos el margen de la escena
|
|
27
|
+
(`Scene(margin=...)`). Layout la usa para no pegar el contenido a los bordes.
|
|
28
|
+
|
|
29
|
+
/ Binding (vínculo): relación por la que una propiedad copia la de otro
|
|
30
|
+
objeto, como `bind_x_from`, `bind_rotation_from` o `follow`. Ver
|
|
31
|
+
#link("/guias/reactividad/")[Reactividad].
|
|
32
|
+
|
|
33
|
+
/ Capacidad: cada grupo de fábricas de una escena: `scene.geometry`,
|
|
34
|
+
`scene.text`, `scene.layout`, `scene.media`, `scene.viz`, `scene.slides`,
|
|
35
|
+
`scene.mechanics`, `scene.assets`, `scene.canvas` y `scene.camera`.
|
|
36
|
+
|
|
37
|
+
/ Captura (`scene.snapshots`): imagen exacta de un instante de la escena, que
|
|
38
|
+
`gaanim --diff` compara con una versión aprobada. Ver
|
|
39
|
+
#link("/guias/capturas-y-comparacion/")[Capturas y comparación visual].
|
|
40
|
+
|
|
41
|
+
/ Composición (`Composition`): grupo de animaciones ordenadas con
|
|
42
|
+
`parallel`, `sequence` o `stagger`, que se reproduce como una unidad.
|
|
43
|
+
|
|
44
|
+
/ Corte: cambio inmediato, sin duración, que un método aplicado fuera de
|
|
45
|
+
`.animate` registra en el cursor actual (por ejemplo `circle.fill(RED)`
|
|
46
|
+
después de un `play`). Es reversible: al volver atrás en la línea de tiempo,
|
|
47
|
+
el objeto recupera su estado anterior.
|
|
48
|
+
|
|
49
|
+
/ Cursor (`scene.cursor`): el instante de la línea de tiempo en el que se
|
|
50
|
+
añade lo siguiente que escribes. Avanza con cada `scene.play` y
|
|
51
|
+
`scene.wait`.
|
|
52
|
+
|
|
53
|
+
/ Drawable: cualquier objeto visible de la escena (una figura, un texto, una
|
|
54
|
+
imagen, un gráfico, un layout). En español decimos también *objeto*.
|
|
55
|
+
|
|
56
|
+
/ Easing (`Easing`): la curva que reparte el progreso de una animación en el
|
|
57
|
+
tiempo: `Easing.LINEAR`, `Easing.SMOOTH`, `Easing.spring(...)`… Se aplica
|
|
58
|
+
con `.easing(...)`.
|
|
59
|
+
|
|
60
|
+
/ Escena (`Scene`): el documento que describes en Python. Contiene los
|
|
61
|
+
objetos, la línea de tiempo, el tema y la cámara, y termina con
|
|
62
|
+
`scene.render()`.
|
|
63
|
+
|
|
64
|
+
/ Exportar (`gaanim export`): renderizar la escena a un archivo de video,
|
|
65
|
+
imagen animada o secuencia PNG. Ver
|
|
66
|
+
#link("/guias/proyectos/")[Proyectos y exportación].
|
|
67
|
+
|
|
68
|
+
/ Fábrica: método que crea un drawable y devuelve su handle, como
|
|
69
|
+
`scene.geometry.circle(1)` o `scene.text("Hola")`.
|
|
70
|
+
|
|
71
|
+
/ Fragmento: parte de un texto seleccionada por su contenido, como
|
|
72
|
+
`text["energía"]`, para colorearla o animarla por separado. Si el texto
|
|
73
|
+
tiene una parte con ese nombre, se usa la parte.
|
|
74
|
+
|
|
75
|
+
/ Handle: el valor de Python que devuelve una fábrica y con el que manipulas
|
|
76
|
+
el objeto: `circle = scene.geometry.circle(1)`. Sus métodos son encadenables:
|
|
77
|
+
`circle.fill(BLUE).move_to(2, 0)`.
|
|
78
|
+
|
|
79
|
+
/ Layout: sistema que coloca objetos en filas, columnas, rejillas y capas sin
|
|
80
|
+
coordenadas manuales (`scene.layout`). Ver #link("/guias/layout/")[Layout].
|
|
81
|
+
|
|
82
|
+
/ Línea de tiempo: la secuencia de todo lo que ocurre en la escena, con su
|
|
83
|
+
instante exacto. Gaanim puede saltar a cualquier punto de ella y mostrar lo
|
|
84
|
+
mismo que al reproducir.
|
|
85
|
+
|
|
86
|
+
/ Manifiesto (`gaanim.toml`): archivo que define un proyecto: nombre, tipo,
|
|
87
|
+
script de entrada y carpetas de recursos y exportación.
|
|
88
|
+
|
|
89
|
+
/ Marcador (`scene.marker`): nombre de un instante de la línea de tiempo.
|
|
90
|
+
El editor lo muestra en la barra de reproducción y `gaanim export --from/--to`
|
|
91
|
+
lo acepta en lugar de segundos.
|
|
92
|
+
|
|
93
|
+
/ Parada (`scene.stop`): punto donde el modo presentación espera a que
|
|
94
|
+
avances. La vista previa, las capturas y la exportación no se detienen en
|
|
95
|
+
ella. En la vista del presentador cada parada es un *paso*.
|
|
96
|
+
|
|
97
|
+
/ Parámetro (`Parameter`, `scene.viz.parameter`): valor numérico invisible y
|
|
98
|
+
animable del que pueden depender otros objetos.
|
|
99
|
+
|
|
100
|
+
/ Parte (`part`): fragmento de un texto o una ecuación con nombre propio,
|
|
101
|
+
como `part("masa", "m")`, que puedes seleccionar con `text["masa"]` y que
|
|
102
|
+
las transformaciones emparejan por nombre.
|
|
103
|
+
|
|
104
|
+
/ Presenter View (vista del presentador): ventana con la diapositiva actual,
|
|
105
|
+
la siguiente, las notas y el tiempo, que se abre con `gaanim --present`. Ver
|
|
106
|
+
#link("/guias/presentaciones/")[Presentaciones].
|
|
107
|
+
|
|
108
|
+
/ Proyecto: carpeta con un `gaanim.toml`, un script de entrada, recursos y
|
|
109
|
+
exportaciones. Se crea con `gaanim init video` o `gaanim init slides`.
|
|
110
|
+
|
|
111
|
+
/ Punto de referencia (`PointRef`): punto lógico, sin dibujo, que otros
|
|
112
|
+
objetos pueden seguir o usar como extremo; lo crean `polar_point`,
|
|
113
|
+
`point_ref`, `offset_point` y `point_between`.
|
|
114
|
+
|
|
115
|
+
/ Reactivo: se dice del objeto o valor que se recalcula a partir de otros en
|
|
116
|
+
cada fotograma, como una `tracking_line` o un `computed`.
|
|
117
|
+
|
|
118
|
+
/ Recarga en caliente: la vista previa vuelve a ejecutar el script al guardar
|
|
119
|
+
y conserva lo que no cambió.
|
|
120
|
+
|
|
121
|
+
/ Rol de texto (`role=`): estilo con nombre que el tema define para un texto:
|
|
122
|
+
`"title"`, `"subtitle"`, `"body"`, `"caption"`…
|
|
123
|
+
|
|
124
|
+
/ Segmento (`scene.segment`): tramo con nombre de la línea de tiempo. En una
|
|
125
|
+
presentación, cada segmento es una diapositiva; entre segmentos puede haber
|
|
126
|
+
una transición.
|
|
127
|
+
|
|
128
|
+
/ Stagger (`stagger`): composición que arranca varias animaciones con un
|
|
129
|
+
desfase entre ellas, por orden o por distancia a un origen.
|
|
130
|
+
|
|
131
|
+
/ Tema (`theme=`, `Theme`): conjunto de colores, tipografías y estilos de
|
|
132
|
+
texto que la escena aplica por defecto, como `"presentation"` o
|
|
133
|
+
`"technical"`.
|
|
134
|
+
|
|
135
|
+
/ Transición (`Transition`): el paso visual de un segmento al siguiente,
|
|
136
|
+
como `Transition.cross_fade(0.4)` o `Transition.wipe(...)`.
|
|
137
|
+
|
|
138
|
+
/ Unidades lógicas: la medida de toda la escena. El fotograma mide 16 × 9
|
|
139
|
+
unidades con el origen en el centro; los píxeles solo se eligen al
|
|
140
|
+
previsualizar o exportar.
|
|
141
|
+
|
|
142
|
+
/ Updater (`Updater`, `add_updater`): comportamiento continuo añadido a un
|
|
143
|
+
objeto, como `Updater.rotate(1.5)` o `Updater.wiggle(...)`. Ver
|
|
144
|
+
#link("/guias/reactividad/")[Reactividad].
|
|
145
|
+
|
|
146
|
+
/ Valor calculado (`computed`): número derivado de parámetros, variables o
|
|
147
|
+
del tiempo mediante una función de Python pura con entradas explícitas.
|
|
148
|
+
|
|
149
|
+
/ Versión aprobada (*baseline*): el conjunto de capturas aceptadas contra el
|
|
150
|
+
que `gaanim --diff` compara. Se actualiza con `--bless`.
|
|
151
|
+
|
|
152
|
+
/ Vista previa: la ventana que abre `gaanim archivo.py` o `gaanim proyecto`,
|
|
153
|
+
con reproducción, saltos y recarga en caliente.
|