Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
5 : * This Source Code Form is subject to the terms of the Mozilla Public
6 : * License, v. 2.0. If a copy of the MPL was not distributed with this
7 : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 : *
9 : * This file incorporates work covered by the following license notice:
10 : *
11 : * Licensed to the Apache Software Foundation (ASF) under one or more
12 : * contributor license agreements. See the NOTICE file distributed
13 : * with this work for additional information regarding copyright
14 : * ownership. The ASF licenses this file to you under the Apache
15 : * License, Version 2.0 (the "License"); you may not use this file
16 : * except in compliance with the License. You may obtain a copy of
17 : * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 : */
19 :
20 :
21 : #include <boost/current_function.hpp>
22 : #include <basegfx/numeric/ftools.hxx>
23 : #include <com/sun/star/animations/TransitionType.hpp>
24 : #include <com/sun/star/animations/TransitionSubType.hpp>
25 :
26 : #include "transitionfactory.hxx"
27 : #include "tools.hxx"
28 :
29 : #include <algorithm>
30 :
31 : using namespace ::com::sun::star;
32 :
33 : namespace slideshow {
34 : namespace internal {
35 :
36 : namespace {
37 :
38 : static const TransitionInfo lcl_transitionInfo[] =
39 : {
40 : {
41 : 0,
42 : 0,
43 : TransitionInfo::TRANSITION_INVALID,
44 : 0.0,
45 : 0.0,
46 : 0.0,
47 : TransitionInfo::REVERSEMETHOD_IGNORE,
48 : false,
49 : false
50 : },
51 : {
52 : // mapped to BarWipePolyPolygon:
53 : animations::TransitionType::BARWIPE,
54 : animations::TransitionSubType::LEFTTORIGHT, // (1)
55 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
56 : 0.0, // no rotation
57 : 1.0, // no scaling
58 : 1.0, // no scaling
59 : TransitionInfo::REVERSEMETHOD_FLIP_X,
60 : false, // 'out' by subtraction
61 : false // scale isotrophically to target size
62 : },
63 : {
64 : // mapped to BarWipePolyPolygon:
65 : animations::TransitionType::BARWIPE,
66 : animations::TransitionSubType::TOPTOBOTTOM, // (2)
67 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
68 : 90.0, // rotation
69 : 1.0, // no scaling
70 : 1.0, // no scaling
71 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
72 : false, // 'out' by subtraction
73 : false // scale isotrophically to target size
74 : },
75 :
76 : {
77 : // mapped to BarWipePolyPolygon(nBars=5):
78 : animations::TransitionType::BLINDSWIPE,
79 : animations::TransitionSubType::VERTICAL,
80 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
81 : 0.0, // no rotation
82 : 1.0, // no scaling
83 : 1.0, // no scaling
84 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
85 : true, // 'out' by parameter sweep inversion
86 : false // scale isotrophically to target size
87 : },
88 : {
89 : // mapped to BarWipePolyPolygon(nBars=5):
90 : animations::TransitionType::BLINDSWIPE,
91 : animations::TransitionSubType::HORIZONTAL,
92 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
93 : 90.0, // rotation
94 : 1.0, // no scaling
95 : 1.0, // no scaling
96 : TransitionInfo::REVERSEMETHOD_FLIP_X,
97 : true, // 'out' by parameter sweep inversion
98 : false // scale isotrophically to target size
99 : },
100 :
101 : {
102 : // mapped to BoxWipe:
103 : animations::TransitionType::BOXWIPE,
104 : animations::TransitionSubType::TOPLEFT, // (3)
105 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
106 : 0.0, // no rotation
107 : 1.0, // no scaling
108 : 1.0, // no scaling
109 : TransitionInfo::REVERSEMETHOD_IGNORE, // possible via bottomRight
110 : true, // 'out' by parameter sweep inversion
111 : false // scale isotrophically to target size
112 : },
113 : {
114 : // mapped to BoxWipe:
115 : animations::TransitionType::BOXWIPE,
116 : animations::TransitionSubType::TOPRIGHT, // (4)
117 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
118 : 90.0, // rotation
119 : 1.0, // no scaling
120 : 1.0, // no scaling
121 : TransitionInfo::REVERSEMETHOD_IGNORE, // possible via bottomLeft
122 : true, // 'out' by parameter sweep inversion
123 : false // scale isotrophically to target size
124 : },
125 : {
126 : // mapped to BoxWipe:
127 : animations::TransitionType::BOXWIPE,
128 : animations::TransitionSubType::BOTTOMRIGHT, // (5)
129 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
130 : 180.0, // rotation
131 : 1.0, // no scaling
132 : 1.0, // no scaling
133 : TransitionInfo::REVERSEMETHOD_IGNORE, // possible via topLeft
134 : true, // 'out' by parameter sweep inversion
135 : false // scale isotrophically to target size
136 : },
137 : {
138 : // mapped to BoxWipe:
139 : animations::TransitionType::BOXWIPE,
140 : animations::TransitionSubType::BOTTOMLEFT, // (6)
141 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
142 : -90.0, // rotation
143 : 1.0, // no scaling
144 : 1.0, // no scaling
145 : TransitionInfo::REVERSEMETHOD_IGNORE, // possible via topRight
146 : true, // 'out' by parameter sweep inversion
147 : false // scale isotrophically to target size
148 : },
149 : {
150 : // mapped to BoxWipe:
151 : animations::TransitionType::BOXWIPE,
152 : animations::TransitionSubType::TOPCENTER, // (23)
153 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
154 : 0.0, // no rotation
155 : 1.0, // no scaling
156 : 1.0, // no scaling
157 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
158 : true, // 'out' by parameter sweep inversion
159 : false // scale isotrophically to target size
160 : },
161 : {
162 : // mapped to BoxWipe:
163 : animations::TransitionType::BOXWIPE,
164 : animations::TransitionSubType::RIGHTCENTER, // (24)
165 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
166 : 90.0, // rotation
167 : 1.0, // no scaling
168 : 1.0, // no scaling
169 : TransitionInfo::REVERSEMETHOD_FLIP_X,
170 : true, // 'out' by parameter sweep inversion
171 : false // scale isotrophically to target size
172 : },
173 : {
174 : // mapped to BoxWipe:
175 : animations::TransitionType::BOXWIPE,
176 : animations::TransitionSubType::BOTTOMCENTER, // (25)
177 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
178 : 180.0, // rotation
179 : 1.0, // no scaling
180 : 1.0, // no scaling
181 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
182 : true, // 'out' by parameter sweep inversion
183 : false // scale isotrophically to target size
184 : },
185 : {
186 : // mapped to BoxWipe:
187 : animations::TransitionType::BOXWIPE,
188 : animations::TransitionSubType::LEFTCENTER, // (26)
189 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
190 : -90.0, // rotation
191 : 1.0, // no scaling
192 : 1.0, // no scaling
193 : TransitionInfo::REVERSEMETHOD_FLIP_X,
194 : true, // 'out' by parameter sweep inversion
195 : false // scale isotrophically to target size
196 : },
197 :
198 : {
199 : // mapped to FourBoxWipe:
200 : animations::TransitionType::FOURBOXWIPE,
201 : animations::TransitionSubType::CORNERSIN, // (7)
202 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
203 : 0.0, // no rotation
204 : 1.0, // no scaling
205 : 1.0, // no scaling
206 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
207 : true, // 'out' by parameter sweep inversion
208 : false // scale isotrophically to target size
209 : },
210 : {
211 : // mapped to FourBoxWipe:
212 : animations::TransitionType::FOURBOXWIPE,
213 : animations::TransitionSubType::CORNERSOUT, // (8)
214 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
215 : 0.0, // no rotation
216 : 1.0, // no scaling
217 : 1.0, // no scaling
218 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
219 : true, // 'out' by parameter sweep inversion
220 : false // scale isotrophically to target size
221 : },
222 :
223 : {
224 : // mapped to BarnDoorWipe:
225 : animations::TransitionType::BARNDOORWIPE,
226 : animations::TransitionSubType::VERTICAL, // (21)
227 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
228 : 0.0, // no rotation
229 : 1.0, // no scaling
230 : 1.0, // no scaling
231 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
232 : true, // 'out' by parameter sweep inversion
233 : false // scale isotrophically to target size
234 : },
235 : {
236 : // mapped to BarnDoorWipe:
237 : animations::TransitionType::BARNDOORWIPE,
238 : animations::TransitionSubType::HORIZONTAL, // (22)
239 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
240 : 90.0, // rotation
241 : 1.0, // no scaling
242 : 1.0, // no scaling
243 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
244 : true, // 'out' by parameter sweep inversion
245 : false // scale isotrophically to target size
246 : },
247 : {
248 : // mapped to BarnDoorWipe:
249 : animations::TransitionType::BARNDOORWIPE,
250 : animations::TransitionSubType::DIAGONALBOTTOMLEFT, // (45)
251 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
252 : 45.0, // rotation
253 : M_SQRT2, // scaling
254 : M_SQRT2, // scaling
255 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
256 : true, // 'out' by parameter sweep inversion
257 : false // scale isotrophically to target size
258 : },
259 : {
260 : // mapped to BarnDoorWipe:
261 : animations::TransitionType::BARNDOORWIPE,
262 : animations::TransitionSubType::DIAGONALTOPLEFT, // (46)
263 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
264 : -45.0, // rotation
265 : M_SQRT2, // scaling
266 : M_SQRT2, // scaling
267 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
268 : true, // 'out' by parameter sweep inversion
269 : false // scale isotrophically to target size
270 : },
271 :
272 : {
273 : // mapped to BarWipePolyPolygon:
274 : animations::TransitionType::DIAGONALWIPE,
275 : animations::TransitionSubType::TOPLEFT, // (41)
276 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
277 : 45.0, // rotation
278 : M_SQRT2, // scaling
279 : M_SQRT2, // scaling
280 : TransitionInfo::REVERSEMETHOD_IGNORE,
281 : true, // 'out' by parameter sweep inversion
282 : false // scale isotrophically to target size
283 : },
284 : {
285 : // mapped to BarWipePolyPolygon:
286 : animations::TransitionType::DIAGONALWIPE,
287 : animations::TransitionSubType::TOPRIGHT, // (42)
288 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
289 : 135.0, // rotation
290 : M_SQRT2, // scaling
291 : M_SQRT2, // scaling
292 : TransitionInfo::REVERSEMETHOD_IGNORE,
293 : true, // 'out' by parameter sweep inversion
294 : false // scale isotrophically to target size
295 : },
296 :
297 :
298 : {
299 : animations::TransitionType::BOWTIEWIPE,
300 : animations::TransitionSubType::VERTICAL,
301 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
302 : // TODO(F2): Setup parameters
303 : 0.0, // no rotation
304 : 1.0, // no scaling
305 : 1.0, // no scaling
306 : TransitionInfo::REVERSEMETHOD_IGNORE,
307 : true, // 'out' by parameter sweep inversion
308 : false // scale isotrophically to target size
309 : },
310 : {
311 : animations::TransitionType::BOWTIEWIPE,
312 : animations::TransitionSubType::HORIZONTAL,
313 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
314 : // TODO(F2): Setup parameters
315 : 0.0, // no rotation
316 : 1.0, // no scaling
317 : 1.0, // no scaling
318 : TransitionInfo::REVERSEMETHOD_IGNORE,
319 : true, // 'out' by parameter sweep inversion
320 : false // scale isotrophically to target size
321 : },
322 :
323 : {
324 : // mapped to BarnDoorWipe (doubled=true):
325 : animations::TransitionType::MISCDIAGONALWIPE,
326 : animations::TransitionSubType::DOUBLEBARNDOOR, // (47)
327 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
328 : 45.0, // rotation
329 : M_SQRT2, // scaling
330 : M_SQRT2, // scaling
331 : TransitionInfo::REVERSEMETHOD_IGNORE,
332 : true, // 'out' by parameter sweep inversion
333 : false // scale isotrophically to target size
334 : },
335 : {
336 : // mapped to DoubleDiamondWipe:
337 : animations::TransitionType::MISCDIAGONALWIPE,
338 : animations::TransitionSubType::DOUBLEDIAMOND, // (48)
339 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
340 : 0.0, // no rotation
341 : 1.0, // no scaling
342 : 1.0, // no scaling
343 : TransitionInfo::REVERSEMETHOD_IGNORE,
344 : true, // 'out' by parameter sweep inversion
345 : false // scale isotrophically to target size
346 : },
347 :
348 : {
349 : // mapped to VeeWipe:
350 : animations::TransitionType::VEEWIPE,
351 : animations::TransitionSubType::DOWN, // (61)
352 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
353 : 0.0, // no rotation
354 : 1.0, // no scaling
355 : 1.0, // no scaling
356 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
357 : true, // 'out' by parameter sweep inversion
358 : false // scale isotrophically to target size
359 : },
360 : {
361 : // mapped to VeeWipe:
362 : animations::TransitionType::VEEWIPE,
363 : animations::TransitionSubType::LEFT, // (62)
364 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
365 : 90.0, // rotation
366 : 1.0, // no scaling
367 : 1.0, // no scaling
368 : TransitionInfo::REVERSEMETHOD_FLIP_X,
369 : true, // 'out' by parameter sweep inversion
370 : false // scale isotrophically to target size
371 : },
372 : {
373 : animations::TransitionType::VEEWIPE,
374 : animations::TransitionSubType::UP, // (63)
375 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
376 : 180.0, // rotation
377 : 1.0, // no scaling
378 : 1.0, // no scaling
379 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
380 : true, // 'out' by parameter sweep inversion
381 : false // scale isotrophically to target size
382 : },
383 : {
384 : animations::TransitionType::VEEWIPE,
385 : animations::TransitionSubType::RIGHT,
386 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
387 : -90.0, // rotation
388 : 1.0, // no scaling
389 : 1.0, // no scaling
390 : TransitionInfo::REVERSEMETHOD_FLIP_X,
391 : true, // 'out' by parameter sweep inversion
392 : false // scale isotrophically to target size
393 : },
394 :
395 :
396 : {
397 : animations::TransitionType::BARNVEEWIPE,
398 : animations::TransitionSubType::TOP,
399 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
400 : // TODO(F2): Setup parameters
401 : 0.0, // no rotation
402 : 1.0, // no scaling
403 : 1.0, // no scaling
404 : TransitionInfo::REVERSEMETHOD_IGNORE,
405 : true, // 'out' by parameter sweep inversion
406 : false // scale isotrophically to target size
407 : },
408 : {
409 : animations::TransitionType::BARNVEEWIPE,
410 : animations::TransitionSubType::LEFT,
411 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
412 : // TODO(F2): Setup parameters
413 : 0.0, // no rotation
414 : 1.0, // no scaling
415 : 1.0, // no scaling
416 : TransitionInfo::REVERSEMETHOD_IGNORE,
417 : true, // 'out' by parameter sweep inversion
418 : false // scale isotrophically to target size
419 : },
420 : {
421 : animations::TransitionType::BARNVEEWIPE,
422 : animations::TransitionSubType::UP,
423 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
424 : // TODO(F2): Setup parameters
425 : 0.0, // no rotation
426 : 1.0, // no scaling
427 : 1.0, // no scaling
428 : TransitionInfo::REVERSEMETHOD_IGNORE,
429 : true, // 'out' by parameter sweep inversion
430 : false // scale isotrophically to target size
431 : },
432 : {
433 : animations::TransitionType::BARNVEEWIPE,
434 : animations::TransitionSubType::RIGHT,
435 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
436 : // TODO(F2): Setup parameters
437 : 0.0, // no rotation
438 : 1.0, // no scaling
439 : 1.0, // no scaling
440 : TransitionInfo::REVERSEMETHOD_IGNORE,
441 : true, // 'out' by parameter sweep inversion
442 : false // scale isotrophically to target size
443 : },
444 :
445 : {
446 : // mapped to ZigZagWipe:
447 : animations::TransitionType::ZIGZAGWIPE,
448 : animations::TransitionSubType::LEFTTORIGHT, // (71)
449 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
450 : 0.0, // no rotation
451 : 1.0, // no scaling
452 : 1.0, // no scaling
453 : TransitionInfo::REVERSEMETHOD_FLIP_X,
454 : true, // 'out' by parameter sweep inversion
455 : false // scale isotrophically to target size
456 : },
457 : {
458 : // mapped to ZigZagWipe:
459 : animations::TransitionType::ZIGZAGWIPE,
460 : animations::TransitionSubType::TOPTOBOTTOM, // (72)
461 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
462 : 90.0, // rotation
463 : 1.0, // no scaling
464 : 1.0, // no scaling
465 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
466 : true, // 'out' by parameter sweep inversion
467 : false // scale isotrophically to target size
468 : },
469 : {
470 : // mapped to BarnZigZagWipe:
471 : animations::TransitionType::BARNZIGZAGWIPE,
472 : animations::TransitionSubType::VERTICAL, // (73)
473 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
474 : 0.0, // no rotation
475 : 1.0, // no scaling
476 : 1.0, // no scaling
477 : TransitionInfo::REVERSEMETHOD_IGNORE,
478 : true, // 'out' by parameter sweep inversion
479 : false // scale isotrophically to target size
480 : },
481 : {
482 : // mapped to BarnZigZagWipe:
483 : animations::TransitionType::BARNZIGZAGWIPE,
484 : animations::TransitionSubType::HORIZONTAL, // (74)
485 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
486 : 90.0, // rotation
487 : 1.0, // no scaling
488 : 1.0, // no scaling
489 : TransitionInfo::REVERSEMETHOD_IGNORE,
490 : true, // 'out' by parameter sweep inversion
491 : false // scale isotrophically to target size
492 : },
493 :
494 : {
495 : // mapped to IrisWipe:
496 : animations::TransitionType::IRISWIPE,
497 : animations::TransitionSubType::RECTANGLE, // (101)
498 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
499 : 0.0, // no rotation
500 : 1.0, // no scaling
501 : 1.0, // no scaling
502 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
503 : true, // 'out' by parameter sweep inversion
504 : false // scale isotrophically to target size
505 : },
506 : {
507 : // mapped to IrisWipe:
508 : animations::TransitionType::IRISWIPE,
509 : animations::TransitionSubType::DIAMOND, // (102)
510 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
511 : 45.0, // rotation
512 : M_SQRT2, // scaling
513 : M_SQRT2, // scaling
514 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
515 : true, // 'out' by parameter sweep inversion
516 : false // scale isotrophically to target size
517 : },
518 :
519 :
520 : {
521 : // mapped to FigureWipe(triangle):
522 : animations::TransitionType::TRIANGLEWIPE,
523 : animations::TransitionSubType::UP, // (103)
524 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
525 : 0.0, // no rotation
526 : 1.0, // no scaling
527 : 1.0, // no scaling
528 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
529 : true, // 'out' by parameter sweep inversion
530 : false // scale isotrophically to target size
531 : },
532 : {
533 : // mapped to FigureWipe(triangle):
534 : animations::TransitionType::TRIANGLEWIPE,
535 : animations::TransitionSubType::RIGHT, // (104)
536 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
537 : 90.0, // rotation
538 : 1.0, // no scaling
539 : 1.0, // no scaling
540 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
541 : true, // 'out' by parameter sweep inversion
542 : false // scale isotrophically to target size
543 : },
544 : {
545 : // mapped to FigureWipe(triangle):
546 : animations::TransitionType::TRIANGLEWIPE,
547 : animations::TransitionSubType::DOWN, // (105)
548 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
549 : 180.0, // rotation
550 : 1.0, // no scaling
551 : 1.0, // no scaling
552 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
553 : true, // 'out' by parameter sweep inversion
554 : false // scale isotrophically to target size
555 : },
556 : {
557 : // mapped to FigureWipe(triangle):
558 : animations::TransitionType::TRIANGLEWIPE,
559 : animations::TransitionSubType::LEFT, // (106)
560 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
561 : 270.0, // rotation
562 : 1.0, // no scaling
563 : 1.0, // no scaling
564 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
565 : true, // 'out' by parameter sweep inversion
566 : false // scale isotrophically to target size
567 : },
568 :
569 : {
570 : // mapped to FigureWipe(arrowHead):
571 : animations::TransitionType::ARROWHEADWIPE,
572 : animations::TransitionSubType::UP, // (107)
573 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
574 : 0.0, // no rotation
575 : 1.0, // no scaling
576 : 1.0, // no scaling
577 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
578 : true, // 'out' by parameter sweep inversion
579 : false // scale isotrophically to target size
580 : },
581 : {
582 : // mapped to FigureWipe(arrowHead):
583 : animations::TransitionType::ARROWHEADWIPE,
584 : animations::TransitionSubType::RIGHT, // (108)
585 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
586 : 90.0, // rotation
587 : 1.0, // no scaling
588 : 1.0, // no scaling
589 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
590 : true, // 'out' by parameter sweep inversion
591 : false // scale isotrophically to target size
592 : },
593 : {
594 : // mapped to FigureWipe(arrowHead):
595 : animations::TransitionType::ARROWHEADWIPE,
596 : animations::TransitionSubType::DOWN, // (109)
597 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
598 : 180.0, // rotation
599 : 1.0, // no scaling
600 : 1.0, // no scaling
601 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
602 : true, // 'out' by parameter sweep inversion
603 : false // scale isotrophically to target size
604 : },
605 : {
606 : // mapped to FigureWipe(arrowHead):
607 : animations::TransitionType::ARROWHEADWIPE,
608 : animations::TransitionSubType::LEFT, // (110)
609 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
610 : 270.0, // rotation
611 : 1.0, // no scaling
612 : 1.0, // no scaling
613 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
614 : true, // 'out' by parameter sweep inversion
615 : false // scale isotrophically to target size
616 : },
617 :
618 : {
619 : // mapped to FigureWipe(pentagon):
620 : animations::TransitionType::PENTAGONWIPE,
621 : animations::TransitionSubType::UP, // (111)
622 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
623 : 0.0, // no rotation
624 : 1.0, // no scaling
625 : 1.0, // no scaling
626 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
627 : true, // 'out' by parameter sweep inversion
628 : false // scale isotrophically to target size
629 : },
630 : {
631 : // mapped to FigureWipe(pentagon):
632 : animations::TransitionType::PENTAGONWIPE,
633 : animations::TransitionSubType::DOWN, // (112)
634 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
635 : 180.0, // rotation
636 : 1.0, // no scaling
637 : 1.0, // no scaling
638 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
639 : true, // 'out' by parameter sweep inversion
640 : false // scale isotrophically to target size
641 : },
642 :
643 : {
644 : // mapped to FigureWipe(hexagon):
645 : animations::TransitionType::HEXAGONWIPE,
646 : animations::TransitionSubType::HORIZONTAL, // (113)
647 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
648 : 0.0, // no rotation
649 : 1.0, // no scaling
650 : 1.0, // no scaling
651 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
652 : true, // 'out' by parameter sweep inversion
653 : false // scale isotrophically to target size
654 : },
655 : {
656 : // mapped to FigureWipe(hexagon):
657 : animations::TransitionType::HEXAGONWIPE,
658 : animations::TransitionSubType::VERTICAL, // (114)
659 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
660 : 90.0, // rotation
661 : 1.0, // no scaling
662 : 1.0, // no scaling
663 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
664 : true, // 'out' by parameter sweep inversion
665 : false // scale isotrophically to target size
666 : },
667 :
668 : {
669 : // mapped to EllipseWipe:
670 : animations::TransitionType::ELLIPSEWIPE,
671 : animations::TransitionSubType::CIRCLE,
672 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
673 : 0.0, // no rotation
674 : 1.0, // no scaling
675 : 1.0, // no scaling
676 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
677 : true, // 'out' by parameter sweep inversion
678 : true // scale isotrophically to target size
679 : },
680 : {
681 : // mapped to EllipseWipe:
682 : animations::TransitionType::ELLIPSEWIPE,
683 : animations::TransitionSubType::HORIZONTAL,
684 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
685 : 0.0, // no rotation
686 : 1.0, // no scaling
687 : 1.0, // no scaling
688 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
689 : true, // 'out' by parameter sweep inversion
690 : false // scale isotrophically to target size
691 : },
692 : {
693 : // mapped to EllipseWipe:
694 : animations::TransitionType::ELLIPSEWIPE,
695 : animations::TransitionSubType::VERTICAL,
696 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
697 : 90.0, // rotation
698 : 1.0, // no scaling
699 : 1.0, // no scaling
700 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
701 : true, // 'out' by parameter sweep inversion
702 : false // scale isotrophically to target size
703 : },
704 :
705 :
706 : {
707 : animations::TransitionType::EYEWIPE,
708 : animations::TransitionSubType::HORIZONTAL,
709 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
710 : // TODO(F2): Setup parameters
711 : 0.0, // no rotation
712 : 1.0, // no scaling
713 : 1.0, // no scaling
714 : TransitionInfo::REVERSEMETHOD_IGNORE,
715 : true, // 'out' by parameter sweep inversion
716 : false // scale isotrophically to target size
717 : },
718 : {
719 : animations::TransitionType::EYEWIPE,
720 : animations::TransitionSubType::VERTICAL,
721 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
722 : // TODO(F2): Setup parameters
723 : 0.0, // no rotation
724 : 1.0, // no scaling
725 : 1.0, // no scaling
726 : TransitionInfo::REVERSEMETHOD_IGNORE,
727 : true, // 'out' by parameter sweep inversion
728 : false // scale isotrophically to target size
729 : },
730 : {
731 : animations::TransitionType::ROUNDRECTWIPE,
732 : animations::TransitionSubType::HORIZONTAL,
733 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
734 : // TODO(F2): Setup parameters
735 : 0.0, // no rotation
736 : 1.0, // no scaling
737 : 1.0, // no scaling
738 : TransitionInfo::REVERSEMETHOD_IGNORE,
739 : true, // 'out' by parameter sweep inversion
740 : false // scale isotrophically to target size
741 : },
742 : {
743 : animations::TransitionType::ROUNDRECTWIPE,
744 : animations::TransitionSubType::VERTICAL,
745 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
746 : // TODO(F2): Setup parameters
747 : 0.0, // no rotation
748 : 1.0, // no scaling
749 : 1.0, // no scaling
750 : TransitionInfo::REVERSEMETHOD_IGNORE,
751 : true, // 'out' by parameter sweep inversion
752 : false // scale isotrophically to target size
753 : },
754 :
755 : {
756 : // mapped to FigureWipe(star, points=4):
757 : animations::TransitionType::STARWIPE,
758 : animations::TransitionSubType::FOURPOINT, // (127)
759 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
760 : 0.0, // no rotation
761 : 1.0, // no scaling
762 : 1.0, // no scaling
763 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
764 : true, // 'out' by parameter sweep inversion
765 : false // scale isotrophically to target size
766 : },
767 : {
768 : // mapped to FigureWipe(star, points=5):
769 : animations::TransitionType::STARWIPE,
770 : animations::TransitionSubType::FIVEPOINT, // (128)
771 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
772 : 0.0, // no rotation
773 : 1.0, // no scaling
774 : 1.0, // no scaling
775 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
776 : true, // 'out' by parameter sweep inversion
777 : false // scale isotrophically to target size
778 : },
779 : {
780 : // mapped to FigureWipe(star, points=6):
781 : animations::TransitionType::STARWIPE,
782 : animations::TransitionSubType::SIXPOINT, // (129)
783 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
784 : 0.0, // no rotation
785 : 1.0, // no scaling
786 : 1.0, // no scaling
787 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
788 : true, // 'out' by parameter sweep inversion
789 : false // scale isotrophically to target size
790 : },
791 :
792 : {
793 : animations::TransitionType::MISCSHAPEWIPE,
794 : animations::TransitionSubType::HEART,
795 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
796 : // TODO(F2): Setup parameters
797 : 0.0, // no rotation
798 : 1.0, // no scaling
799 : 1.0, // no scaling
800 : TransitionInfo::REVERSEMETHOD_IGNORE,
801 : true, // 'out' by parameter sweep inversion
802 : false // scale isotrophically to target size
803 : },
804 : {
805 : animations::TransitionType::MISCSHAPEWIPE,
806 : animations::TransitionSubType::KEYHOLE,
807 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
808 : // TODO(F2): Setup parameters
809 : 0.0, // no rotation
810 : 1.0, // no scaling
811 : 1.0, // no scaling
812 : TransitionInfo::REVERSEMETHOD_IGNORE,
813 : true, // 'out' by parameter sweep inversion
814 : false // scale isotrophically to target size
815 : },
816 :
817 : {
818 : // mapped to ClockWipe:
819 : animations::TransitionType::CLOCKWIPE,
820 : animations::TransitionSubType::CLOCKWISETWELVE, // (201)
821 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
822 : 0.0, // no rotation
823 : 1.0, // no scaling
824 : 1.0, // no scaling
825 : TransitionInfo::REVERSEMETHOD_FLIP_X,
826 : true, // 'out' by parameter sweep inversion
827 : false // scale isotrophically to target size
828 : },
829 : {
830 : // mapped to ClockWipe:
831 : animations::TransitionType::CLOCKWIPE,
832 : animations::TransitionSubType::CLOCKWISETHREE, // (202)
833 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
834 : 90.0, // rotation
835 : 1.0, // no scaling
836 : 1.0, // no scaling
837 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
838 : true, // 'out' by parameter sweep inversion
839 : false // scale isotrophically to target size
840 : },
841 : {
842 : // mapped to ClockWipe:
843 : animations::TransitionType::CLOCKWIPE,
844 : animations::TransitionSubType::CLOCKWISESIX, // (203)
845 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
846 : 180.0, // rotation
847 : 1.0, // no scaling
848 : 1.0, // no scaling
849 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
850 : true, // 'out' by parameter sweep inversion
851 : false // scale isotrophically to target size
852 : },
853 : {
854 : // mapped to ClockWipe:
855 : animations::TransitionType::CLOCKWIPE,
856 : animations::TransitionSubType::CLOCKWISENINE, // (204)
857 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
858 : 270.0, // rotation
859 : 1.0, // no scaling
860 : 1.0, // no scaling
861 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
862 : true, // 'out' by parameter sweep inversion
863 : false // scale isotrophically to target size
864 : },
865 :
866 : {
867 : // mapped to PinWheelWipe:
868 : animations::TransitionType::PINWHEELWIPE,
869 : animations::TransitionSubType::ONEBLADE,
870 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
871 : 0.0, // no rotation
872 : 1.0, // no scaling
873 : 1.0, // no scaling
874 : TransitionInfo::REVERSEMETHOD_FLIP_X,
875 : true, // 'out' by parameter sweep inversion
876 : true // scale isotrophically to target size, like ppt
877 : },
878 : {
879 : // mapped to PinWheelWipe:
880 : animations::TransitionType::PINWHEELWIPE,
881 : animations::TransitionSubType::TWOBLADEVERTICAL, // (205)
882 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
883 : 0.0, // no rotation
884 : 1.0, // no scaling
885 : 1.0, // no scaling
886 : TransitionInfo::REVERSEMETHOD_FLIP_X,
887 : true, // 'out' by parameter sweep inversion
888 : true // scale isotrophically to target size, like ppt
889 : },
890 : {
891 : // mapped to PinWheelWipe:
892 : animations::TransitionType::PINWHEELWIPE,
893 : animations::TransitionSubType::TWOBLADEHORIZONTAL, // (206)
894 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
895 : -90.0, // rotation
896 : 1.0, // no scaling
897 : 1.0, // no scaling
898 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
899 : true, // 'out' by parameter sweep inversion
900 : true // scale isotrophically to target size, like ppt
901 : },
902 : {
903 : // mapped to PinWheelWipe:
904 : animations::TransitionType::PINWHEELWIPE,
905 : animations::TransitionSubType::THREEBLADE,
906 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
907 : 0.0, // no rotation
908 : 1.0, // no scaling
909 : 1.0, // no scaling
910 : TransitionInfo::REVERSEMETHOD_FLIP_X,
911 : true, // 'out' by parameter sweep inversion
912 : true // scale isotrophically to target size, like ppt
913 : },
914 : {
915 : // mapped to PinWheelWipe:
916 : animations::TransitionType::PINWHEELWIPE,
917 : animations::TransitionSubType::FOURBLADE, // (207)
918 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
919 : 0.0, // no rotation
920 : 1.0, // no scaling
921 : 1.0, // no scaling
922 : TransitionInfo::REVERSEMETHOD_FLIP_X,
923 : true, // 'out' by parameter sweep inversion
924 : true // scale isotrophically to target size, like ppt
925 : },
926 : {
927 : // mapped to PinWheelWipe:
928 : animations::TransitionType::PINWHEELWIPE,
929 : animations::TransitionSubType::EIGHTBLADE,
930 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
931 : 0.0, // no rotation
932 : 1.0, // no scaling
933 : 1.0, // no scaling
934 : TransitionInfo::REVERSEMETHOD_FLIP_X,
935 : true, // 'out' by parameter sweep inversion
936 : true // scale isotrophically to target size, like ppt
937 : },
938 :
939 : {
940 : // mapped to SweepWipe (center=true, single=true):
941 : animations::TransitionType::SINGLESWEEPWIPE,
942 : animations::TransitionSubType::CLOCKWISETOP, // (221)
943 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
944 : 0.0, // no rotation
945 : 1.0, // no scaling
946 : 1.0, // no scaling
947 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
948 : true, // 'out' by parameter sweep inversion
949 : false // scale isotrophically to target size
950 : },
951 : {
952 : // mapped to SweepWipe (center=true, single=true):
953 : animations::TransitionType::SINGLESWEEPWIPE,
954 : animations::TransitionSubType::CLOCKWISERIGHT, // (222)
955 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
956 : 90.0, // rotation
957 : 1.0, // no scaling
958 : 1.0, // no scaling
959 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
960 : true, // 'out' by parameter sweep inversion
961 : false // scale isotrophically to target size
962 : },
963 : {
964 : // mapped to SweepWipe (center=true, single=true):
965 : animations::TransitionType::SINGLESWEEPWIPE,
966 : animations::TransitionSubType::CLOCKWISEBOTTOM, // (223)
967 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
968 : 180.0, // rotation
969 : 1.0, // no scaling
970 : 1.0, // no scaling
971 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
972 : true, // 'out' by parameter sweep inversion
973 : false // scale isotrophically to target size
974 : },
975 : {
976 : // mapped to SweepWipe (center=true, single=true):
977 : animations::TransitionType::SINGLESWEEPWIPE,
978 : animations::TransitionSubType::CLOCKWISELEFT, // (224)
979 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
980 : 270.0, // rotation
981 : 1.0, // no scaling
982 : 1.0, // no scaling
983 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
984 : true, // 'out' by parameter sweep inversion
985 : false // scale isotrophically to target size
986 : },
987 : {
988 : // mapped to SweepWipe (center=false, single=true):
989 : animations::TransitionType::SINGLESWEEPWIPE,
990 : animations::TransitionSubType::CLOCKWISETOPLEFT, // (241)
991 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
992 : 0.0, // no rotation
993 : 1.0, // no scaling
994 : 1.0, // no scaling
995 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
996 : true, // 'out' by parameter sweep inversion
997 : false // scale isotrophically to target size
998 : },
999 : {
1000 : // mapped to SweepWipe (center=false, single=true, flipOnYAxis=true):
1001 : animations::TransitionType::SINGLESWEEPWIPE,
1002 : animations::TransitionSubType::COUNTERCLOCKWISEBOTTOMLEFT, // (242)
1003 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1004 : 180.0, // rotation
1005 : 1.0, // no scaling
1006 : 1.0, // no scaling
1007 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1008 : true, // 'out' by parameter sweep inversion
1009 : false // scale isotrophically to target size
1010 : },
1011 : {
1012 : // mapped to SweepWipe (center=false, single=true):
1013 : animations::TransitionType::SINGLESWEEPWIPE,
1014 : animations::TransitionSubType::CLOCKWISEBOTTOMRIGHT, // (243)
1015 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1016 : 180.0, // rotation
1017 : 1.0, // no scaling
1018 : 1.0, // no scaling
1019 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1020 : true, // 'out' by parameter sweep inversion
1021 : false // scale isotrophically to target size
1022 : },
1023 : {
1024 : // mapped to SweepWipe (center=false, single=true, flipOnYAxis=true):
1025 : animations::TransitionType::SINGLESWEEPWIPE,
1026 : animations::TransitionSubType::COUNTERCLOCKWISETOPRIGHT, // (244)
1027 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1028 : 0.0, // no rotation
1029 : 1.0, // no scaling
1030 : 1.0, // no scaling
1031 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1032 : true, // 'out' by parameter sweep inversion
1033 : false // scale isotrophically to target size
1034 : },
1035 :
1036 : {
1037 : // mapped to FanWipe(center=true):
1038 : animations::TransitionType::FANWIPE,
1039 : animations::TransitionSubType::CENTERTOP, // (211)
1040 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1041 : 0.0, // no rotation
1042 : 1.0, // no scaling
1043 : 1.0, // no scaling
1044 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
1045 : true, // 'out' by parameter sweep inversion
1046 : false // scale isotrophically to target size
1047 : },
1048 : {
1049 : // mapped to FanWipe(center=true):
1050 : animations::TransitionType::FANWIPE,
1051 : animations::TransitionSubType::CENTERRIGHT, // (212)
1052 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1053 : 90.0, // rotation
1054 : 1.0, // no scaling
1055 : 1.0, // no scaling
1056 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1057 : true, // 'out' by parameter sweep inversion
1058 : false // scale isotrophically to target size
1059 : },
1060 : {
1061 : // mapped to FanWipe:
1062 : animations::TransitionType::FANWIPE,
1063 : animations::TransitionSubType::TOP, // (231)
1064 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1065 : 180.0, // rotation
1066 : 1.0, // no scaling
1067 : 1.0, // no scaling
1068 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
1069 : true, // 'out' by parameter sweep inversion
1070 : false // scale isotrophically to target size
1071 : },
1072 : {
1073 : // mapped to FanWipe:
1074 : animations::TransitionType::FANWIPE,
1075 : animations::TransitionSubType::RIGHT, // (232)
1076 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1077 : -90.0, // rotation
1078 : 1.0, // no scaling
1079 : 1.0, // no scaling
1080 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1081 : true, // 'out' by parameter sweep inversion
1082 : false // scale isotrophically to target size
1083 : },
1084 : {
1085 : // mapped to FanWipe:
1086 : animations::TransitionType::FANWIPE,
1087 : animations::TransitionSubType::BOTTOM, // (233)
1088 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1089 : 0.0, // no rotation
1090 : 1.0, // no scaling
1091 : 1.0, // no scaling
1092 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
1093 : true, // 'out' by parameter sweep inversion
1094 : false // scale isotrophically to target size
1095 : },
1096 : {
1097 : // mapped to FanWipe:
1098 : animations::TransitionType::FANWIPE,
1099 : animations::TransitionSubType::LEFT, // (234)
1100 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1101 : 90.0, // rotation
1102 : 1.0, // no scaling
1103 : 1.0, // no scaling
1104 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1105 : true, // 'out' by parameter sweep inversion
1106 : false // scale isotrophically to target size
1107 : },
1108 :
1109 : {
1110 : // mapped to FanWipe(center=true, single=false, fanIn=false):
1111 : animations::TransitionType::DOUBLEFANWIPE,
1112 : animations::TransitionSubType::FANOUTVERTICAL, // (213)
1113 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1114 : 0.0, // no rotation
1115 : 1.0, // no scaling
1116 : 1.0, // no scaling
1117 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1118 : true, // 'out' by parameter sweep inversion
1119 : false // scale isotrophically to target size
1120 : },
1121 : {
1122 : // mapped to FanWipe(center=true, single=false, fanIn=false):
1123 : animations::TransitionType::DOUBLEFANWIPE,
1124 : animations::TransitionSubType::FANOUTHORIZONTAL, // (214)
1125 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1126 : 90.0, // rotation
1127 : 1.0, // no scaling
1128 : 1.0, // no scaling
1129 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1130 : true, // 'out' by parameter sweep inversion
1131 : false // scale isotrophically to target size
1132 : },
1133 : {
1134 : // mapped to FanWipe(center=true, single=false, fanIn=true):
1135 : animations::TransitionType::DOUBLEFANWIPE,
1136 : animations::TransitionSubType::FANINVERTICAL, // (235)
1137 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1138 : 0.0, // no rotation
1139 : 1.0, // no scaling
1140 : 1.0, // no scaling
1141 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1142 : true, // 'out' by parameter sweep inversion
1143 : false // scale isotrophically to target size
1144 : },
1145 : {
1146 : // mapped to FanWipe(center=true, single=false, fanIn=true):
1147 : animations::TransitionType::DOUBLEFANWIPE,
1148 : animations::TransitionSubType::FANINHORIZONTAL, // (236)
1149 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1150 : 90.0, // rotation
1151 : 1.0, // no scaling
1152 : 1.0, // no scaling
1153 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1154 : true, // 'out' by parameter sweep inversion
1155 : false // scale isotrophically to target size
1156 : },
1157 :
1158 : {
1159 : // mapped to SweepWipe (center=true, single=false):
1160 : animations::TransitionType::DOUBLESWEEPWIPE,
1161 : animations::TransitionSubType::PARALLELVERTICAL, // (225)
1162 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1163 : 0.0, // no rotation
1164 : 1.0, // no scaling
1165 : 1.0, // no scaling
1166 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1167 : true, // 'out' by parameter sweep inversion
1168 : false // scale isotrophically to target size
1169 : },
1170 : {
1171 : // mapped to SweepWipe (center=true, single=false):
1172 : animations::TransitionType::DOUBLESWEEPWIPE,
1173 : animations::TransitionSubType::PARALLELDIAGONAL, // (226)
1174 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1175 : -90.0, // rotation
1176 : 1.0, // no scaling
1177 : 1.0, // no scaling
1178 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1179 : true, // 'out' by parameter sweep inversion
1180 : false // scale isotrophically to target size
1181 : },
1182 : {
1183 : // mapped to SweepWipe (center=true, single=false,
1184 : // oppositeVertical=true):
1185 : animations::TransitionType::DOUBLESWEEPWIPE,
1186 : animations::TransitionSubType::OPPOSITEVERTICAL, // (227)
1187 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1188 : 0.0, // no rotation
1189 : 1.0, // no scaling
1190 : 1.0, // no scaling
1191 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1192 : true, // 'out' by parameter sweep inversion
1193 : false // scale isotrophically to target size
1194 : },
1195 : {
1196 : // mapped to SweepWipe (center=true, single=false,
1197 : // oppositeVertical=true):
1198 : animations::TransitionType::DOUBLESWEEPWIPE,
1199 : animations::TransitionSubType::OPPOSITEHORIZONTAL,
1200 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1201 : -90.0, // rotation
1202 : 1.0, // no scaling
1203 : 1.0, // no scaling
1204 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1205 : true, // 'out' by parameter sweep inversion
1206 : false // scale isotrophically to target size
1207 : },
1208 : {
1209 : // mapped to SweepWipe (center=false, single=false):
1210 : animations::TransitionType::DOUBLESWEEPWIPE,
1211 : animations::TransitionSubType::PARALLELDIAGONALTOPLEFT,
1212 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1213 : 0.0, // no rotation
1214 : 1.0, // no scaling
1215 : 1.0, // no scaling
1216 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1217 : true, // 'out' by parameter sweep inversion
1218 : false // scale isotrophically to target size
1219 : },
1220 : {
1221 : // mapped to SweepWipe (center=false, single=false):
1222 : animations::TransitionType::DOUBLESWEEPWIPE,
1223 : animations::TransitionSubType::PARALLELDIAGONALBOTTOMLEFT,
1224 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1225 : -90.0, // rotation
1226 : 1.0, // no scaling
1227 : 1.0, // no scaling
1228 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1229 : true, // 'out' by parameter sweep inversion
1230 : false // scale isotrophically to target size
1231 : },
1232 :
1233 : {
1234 : animations::TransitionType::SALOONDOORWIPE,
1235 : animations::TransitionSubType::TOP, // (251)
1236 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1237 : // TODO(F2): Setup parameters
1238 : 0.0, // no rotation
1239 : 1.0, // no scaling
1240 : 1.0, // no scaling
1241 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
1242 : true, // 'out' by parameter sweep inversion
1243 : false // scale isotrophically to target size
1244 : },
1245 : {
1246 : animations::TransitionType::SALOONDOORWIPE,
1247 : animations::TransitionSubType::LEFT, // (252)
1248 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1249 : // TODO(F2): Setup parameters
1250 : 0.0, // no rotation
1251 : 1.0, // no scaling
1252 : 1.0, // no scaling
1253 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1254 : true, // 'out' by parameter sweep inversion
1255 : false // scale isotrophically to target size
1256 : },
1257 : {
1258 : animations::TransitionType::SALOONDOORWIPE,
1259 : animations::TransitionSubType::BOTTOM, // (253)
1260 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1261 : // TODO(F2): Setup parameters
1262 : 0.0, // no rotation
1263 : 1.0, // no scaling
1264 : 1.0, // no scaling
1265 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
1266 : true, // 'out' by parameter sweep inversion
1267 : false // scale isotrophically to target size
1268 : },
1269 : {
1270 : animations::TransitionType::SALOONDOORWIPE,
1271 : animations::TransitionSubType::RIGHT, // (254)
1272 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1273 : // TODO(F2): Setup parameters
1274 : 0.0, // no rotation
1275 : 1.0, // no scaling
1276 : 1.0, // no scaling
1277 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1278 : true, // 'out' by parameter sweep inversion
1279 : false // scale isotrophically to target size
1280 : },
1281 : {
1282 : animations::TransitionType::WINDSHIELDWIPE,
1283 : animations::TransitionSubType::RIGHT,
1284 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1285 : // TODO(F2): Setup parameters
1286 : 0.0, // no rotation
1287 : 1.0, // no scaling
1288 : 1.0, // no scaling
1289 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1290 : true, // 'out' by parameter sweep inversion
1291 : false // scale isotrophically to target size
1292 : },
1293 : {
1294 : animations::TransitionType::WINDSHIELDWIPE,
1295 : animations::TransitionSubType::UP,
1296 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1297 : // TODO(F2): Setup parameters
1298 : 0.0, // no rotation
1299 : 1.0, // no scaling
1300 : 1.0, // no scaling
1301 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
1302 : true, // 'out' by parameter sweep inversion
1303 : false // scale isotrophically to target size
1304 : },
1305 : {
1306 : animations::TransitionType::WINDSHIELDWIPE,
1307 : animations::TransitionSubType::VERTICAL,
1308 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1309 : // TODO(F2): Setup parameters
1310 : 0.0, // no rotation
1311 : 1.0, // no scaling
1312 : 1.0, // no scaling
1313 : TransitionInfo::REVERSEMETHOD_IGNORE,
1314 : true, // 'out' by parameter sweep inversion
1315 : false // scale isotrophically to target size
1316 : },
1317 : {
1318 : animations::TransitionType::WINDSHIELDWIPE,
1319 : animations::TransitionSubType::HORIZONTAL,
1320 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1321 : // TODO(F2): Setup parameters
1322 : 0.0, // no rotation
1323 : 1.0, // no scaling
1324 : 1.0, // no scaling
1325 : TransitionInfo::REVERSEMETHOD_IGNORE,
1326 : true, // 'out' by parameter sweep inversion
1327 : false // scale isotrophically to target size
1328 : },
1329 :
1330 : {
1331 : // mapped to SnakeWipe:
1332 : animations::TransitionType::SNAKEWIPE,
1333 : animations::TransitionSubType::TOPLEFTHORIZONTAL, // (301)
1334 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1335 : 0.0, // no rotation
1336 : 1.0, // no scaling
1337 : 1.0, // no scaling
1338 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1339 : true, // 'out' by parameter sweep inversion
1340 : false // scale isotrophically to target size
1341 : },
1342 : {
1343 : // mapped to SnakeWipe(flipOnYAxis=true):
1344 : animations::TransitionType::SNAKEWIPE,
1345 : animations::TransitionSubType::TOPLEFTVERTICAL, // (302)
1346 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1347 : -90.0, // rotation
1348 : 1.0, // no scaling
1349 : 1.0, // no scaling
1350 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1351 : true, // 'out' by parameter sweep inversion
1352 : false // scale isotrophically to target size
1353 : },
1354 : {
1355 : // mapped to SnakeWipe(diagonal=true):
1356 : animations::TransitionType::SNAKEWIPE,
1357 : animations::TransitionSubType::TOPLEFTDIAGONAL, // (303)
1358 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1359 : 0.0, // no rotation
1360 : 1.0, // no scaling
1361 : 1.0, // no scaling
1362 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1363 : true, // 'out' by parameter sweep inversion
1364 : false // scale isotrophically to target size
1365 : },
1366 : {
1367 : // mapped to SnakeWipe(diagonal=true, flipOnYAxis=true):
1368 : animations::TransitionType::SNAKEWIPE,
1369 : animations::TransitionSubType::TOPRIGHTDIAGONAL, // (304)
1370 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1371 : 0.0, // no rotation
1372 : 1.0, // no scaling
1373 : 1.0, // no scaling
1374 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1375 : true, // 'out' by parameter sweep inversion
1376 : false // scale isotrophically to target size
1377 : },
1378 : {
1379 : // mapped to SnakeWipe(diagonal=true):
1380 : animations::TransitionType::SNAKEWIPE,
1381 : animations::TransitionSubType::BOTTOMRIGHTDIAGONAL, // (305)
1382 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1383 : 180.0, // rotation
1384 : 1.0, // no scaling
1385 : 1.0, // no scaling
1386 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1387 : true, // 'out' by parameter sweep inversion
1388 : false // scale isotrophically to target size
1389 : },
1390 : {
1391 : // mapped to SnakeWipe(diagonal=true, flipOnYAxis=true):
1392 : animations::TransitionType::SNAKEWIPE,
1393 : animations::TransitionSubType::BOTTOMLEFTDIAGONAL, // (306)
1394 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1395 : 180.0, // rotation
1396 : 1.0, // no scaling
1397 : 1.0, // no scaling
1398 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1399 : true, // 'out' by parameter sweep inversion
1400 : false // scale isotrophically to target size
1401 : },
1402 :
1403 : {
1404 : // mapped to SpiralWipe:
1405 : animations::TransitionType::SPIRALWIPE,
1406 : animations::TransitionSubType::TOPLEFTCLOCKWISE, // (310)
1407 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1408 : 0.0, // no rotation
1409 : 1.0, // no scaling
1410 : 1.0, // no scaling
1411 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1412 : true, // 'out' by parameter sweep inversion
1413 : false // scale isotrophically to target size
1414 : },
1415 : {
1416 : // mapped to SpiralWipe:
1417 : animations::TransitionType::SPIRALWIPE,
1418 : animations::TransitionSubType::TOPRIGHTCLOCKWISE, // (311)
1419 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1420 : 90.0, // rotation
1421 : 1.0, // no scaling
1422 : 1.0, // no scaling
1423 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1424 : true, // 'out' by parameter sweep inversion
1425 : false // scale isotrophically to target size
1426 : },
1427 : {
1428 : // mapped to SpiralWipe:
1429 : animations::TransitionType::SPIRALWIPE,
1430 : animations::TransitionSubType::BOTTOMRIGHTCLOCKWISE, // (312)
1431 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1432 : 180.0, // rotation
1433 : 1.0, // no scaling
1434 : 1.0, // no scaling
1435 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1436 : true, // 'out' by parameter sweep inversion
1437 : false // scale isotrophically to target size
1438 : },
1439 : {
1440 : // mapped to SpiralWipe:
1441 : animations::TransitionType::SPIRALWIPE,
1442 : animations::TransitionSubType::BOTTOMLEFTCLOCKWISE, // (313)
1443 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1444 : 270.0, // rotation
1445 : 1.0, // no scaling
1446 : 1.0, // no scaling
1447 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1448 : true, // 'out' by parameter sweep inversion
1449 : false // scale isotrophically to target size
1450 : },
1451 : {
1452 : // mapped to SpiralWipe(flipOnYAxis=true):
1453 : animations::TransitionType::SPIRALWIPE,
1454 : animations::TransitionSubType::TOPLEFTCOUNTERCLOCKWISE, // (314)
1455 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1456 : 90.0, // rotation
1457 : 1.0, // no scaling
1458 : 1.0, // no scaling
1459 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1460 : true, // 'out' by parameter sweep inversion
1461 : false // scale isotrophically to target size
1462 : },
1463 : {
1464 : // mapped to SpiralWipe(flipOnYAxis=true):
1465 : animations::TransitionType::SPIRALWIPE,
1466 : animations::TransitionSubType::TOPRIGHTCOUNTERCLOCKWISE, // (315)
1467 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1468 : 180.0, // rotation
1469 : 1.0, // no scaling
1470 : 1.0, // no scaling
1471 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1472 : true, // 'out' by parameter sweep inversion
1473 : false // scale isotrophically to target size
1474 : },
1475 : {
1476 : // mapped to SpiralWipe(flipOnYAxis=true):
1477 : animations::TransitionType::SPIRALWIPE,
1478 : animations::TransitionSubType::BOTTOMRIGHTCOUNTERCLOCKWISE, // (316)
1479 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1480 : 270.0, // rotation
1481 : 1.0, // no scaling
1482 : 1.0, // no scaling
1483 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1484 : true, // 'out' by parameter sweep inversion
1485 : false // scale isotrophically to target size
1486 : },
1487 : {
1488 : // mapped to SpiralWipe(flipOnYAxis=true):
1489 : animations::TransitionType::SPIRALWIPE,
1490 : animations::TransitionSubType::BOTTOMLEFTCOUNTERCLOCKWISE, // (317)
1491 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1492 : 0.0, // no rotation
1493 : 1.0, // no scaling
1494 : 1.0, // no scaling
1495 : TransitionInfo::REVERSEMETHOD_SUBTRACT_AND_INVERT,
1496 : true, // 'out' by parameter sweep inversion
1497 : false // scale isotrophically to target size
1498 : },
1499 :
1500 : {
1501 : // mapped to ParallelSnakesWipe:
1502 : animations::TransitionType::PARALLELSNAKESWIPE,
1503 : animations::TransitionSubType::VERTICALTOPSAME,
1504 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1505 : 0.0, // no rotation
1506 : 1.0, // no scaling
1507 : 1.0, // no scaling
1508 : TransitionInfo::REVERSEMETHOD_IGNORE,
1509 : true, // 'out' by parameter sweep inversion
1510 : false // scale isotrophically to target size
1511 : },
1512 : {
1513 : // mapped to ParallelSnakesWipe:
1514 : animations::TransitionType::PARALLELSNAKESWIPE,
1515 : animations::TransitionSubType::VERTICALBOTTOMSAME,
1516 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1517 : 180.0, // rotation
1518 : 1.0, // no scaling
1519 : 1.0, // no scaling
1520 : TransitionInfo::REVERSEMETHOD_IGNORE,
1521 : true, // 'out' by parameter sweep inversion
1522 : false // scale isotrophically to target size
1523 : },
1524 : {
1525 : // mapped to ParallelSnakesWipe (opposite=true):
1526 : animations::TransitionType::PARALLELSNAKESWIPE,
1527 : animations::TransitionSubType::VERTICALTOPLEFTOPPOSITE,
1528 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1529 : 0.0, // no rotation
1530 : 1.0, // no scaling
1531 : 1.0, // no scaling
1532 : TransitionInfo::REVERSEMETHOD_IGNORE,
1533 : true, // 'out' by parameter sweep inversion
1534 : false // scale isotrophically to target size
1535 : },
1536 : {
1537 : // mapped to ParallelSnakesWipe (flipOnYAxis=true, opposite=true):
1538 : animations::TransitionType::PARALLELSNAKESWIPE,
1539 : animations::TransitionSubType::VERTICALBOTTOMLEFTOPPOSITE,
1540 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1541 : 0.0, // no rotation
1542 : 1.0, // no scaling
1543 : 1.0, // no scaling
1544 : TransitionInfo::REVERSEMETHOD_IGNORE,
1545 : true, // 'out' by parameter sweep inversion
1546 : false // scale isotrophically to target size
1547 : },
1548 : {
1549 : // mapped to ParallelSnakesWipe:
1550 : animations::TransitionType::PARALLELSNAKESWIPE,
1551 : animations::TransitionSubType::HORIZONTALLEFTSAME,
1552 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1553 : -90.0, // rotation
1554 : 1.0, // no scaling
1555 : 1.0, // no scaling
1556 : TransitionInfo::REVERSEMETHOD_IGNORE,
1557 : true, // 'out' by parameter sweep inversion
1558 : false // scale isotrophically to target size
1559 : },
1560 : {
1561 : // mapped to ParallelSnakesWipe:
1562 : animations::TransitionType::PARALLELSNAKESWIPE,
1563 : animations::TransitionSubType::HORIZONTALRIGHTSAME,
1564 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1565 : 90.0, // rotation
1566 : 1.0, // no scaling
1567 : 1.0, // no scaling
1568 : TransitionInfo::REVERSEMETHOD_IGNORE,
1569 : true, // 'out' by parameter sweep inversion
1570 : false // scale isotrophically to target size
1571 : },
1572 : {
1573 : // mapped to ParallelSnakesWipe (flipOnYAxis=true, opposite=true):
1574 : animations::TransitionType::PARALLELSNAKESWIPE,
1575 : animations::TransitionSubType::HORIZONTALTOPLEFTOPPOSITE,
1576 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1577 : -90.0, // rotation
1578 : 1.0, // no scaling
1579 : 1.0, // no scaling
1580 : TransitionInfo::REVERSEMETHOD_IGNORE,
1581 : true, // 'out' by parameter sweep inversion
1582 : false // scale isotrophically to target size
1583 : },
1584 : {
1585 : // mapped to ParallelSnakesWipe (opposite=true):
1586 : animations::TransitionType::PARALLELSNAKESWIPE,
1587 : animations::TransitionSubType::HORIZONTALTOPRIGHTOPPOSITE,
1588 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1589 : -90.0, // rotation
1590 : 1.0, // no scaling
1591 : 1.0, // no scaling
1592 : TransitionInfo::REVERSEMETHOD_IGNORE,
1593 : true, // 'out' by parameter sweep inversion
1594 : false // scale isotrophically to target size
1595 : },
1596 : {
1597 : // mapped to ParallelSnakesWipe (diagonal=true, opposite=true):
1598 : animations::TransitionType::PARALLELSNAKESWIPE,
1599 : animations::TransitionSubType::DIAGONALBOTTOMLEFTOPPOSITE,
1600 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1601 : 0.0, // no rotation
1602 : 1.0, // no scaling
1603 : 1.0, // no scaling
1604 : TransitionInfo::REVERSEMETHOD_IGNORE,
1605 : true, // 'out' by parameter sweep inversion
1606 : false // scale isotrophically to target size
1607 : },
1608 : {
1609 : // mapped to ParallelSnakesWipe (diagonal=true, opposite=true,
1610 : // flipOnYAxis=true):
1611 : animations::TransitionType::PARALLELSNAKESWIPE,
1612 : animations::TransitionSubType::DIAGONALTOPLEFTOPPOSITE,
1613 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1614 : 0.0, // no rotation
1615 : 1.0, // no scaling
1616 : 1.0, // no scaling
1617 : TransitionInfo::REVERSEMETHOD_IGNORE,
1618 : true, // 'out' by parameter sweep inversion
1619 : false // scale isotrophically to target size
1620 : },
1621 :
1622 : {
1623 : // mapped to BoxSnakesWipe:
1624 : animations::TransitionType::BOXSNAKESWIPE,
1625 : animations::TransitionSubType::TWOBOXTOP, // (340)
1626 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1627 : 90.0, // rotation
1628 : 1.0, // no scaling
1629 : 1.0, // no scaling
1630 : TransitionInfo::REVERSEMETHOD_IGNORE,
1631 : true, // 'out' by parameter sweep inversion
1632 : false // scale isotrophically to target size
1633 : },
1634 : {
1635 : // mapped to BoxSnakesWipe:
1636 : animations::TransitionType::BOXSNAKESWIPE,
1637 : animations::TransitionSubType::TWOBOXBOTTOM, // (341)
1638 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1639 : -90.0, // rotation
1640 : 1.0, // no scaling
1641 : 1.0, // no scaling
1642 : TransitionInfo::REVERSEMETHOD_IGNORE,
1643 : true, // 'out' by parameter sweep inversion
1644 : false // scale isotrophically to target size
1645 : },
1646 : {
1647 : // mapped to BoxSnakesWipe:
1648 : animations::TransitionType::BOXSNAKESWIPE,
1649 : animations::TransitionSubType::TWOBOXLEFT, // (342)
1650 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1651 : 0.0, // no rotation
1652 : 1.0, // no scaling
1653 : 1.0, // no scaling
1654 : TransitionInfo::REVERSEMETHOD_IGNORE,
1655 : true, // 'out' by parameter sweep inversion
1656 : false // scale isotrophically to target size
1657 : },
1658 : {
1659 : // mapped to BoxSnakesWipe:
1660 : animations::TransitionType::BOXSNAKESWIPE,
1661 : animations::TransitionSubType::TWOBOXRIGHT, // (343)
1662 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1663 : 180.0, // rotation
1664 : 1.0, // no scaling
1665 : 1.0, // no scaling
1666 : TransitionInfo::REVERSEMETHOD_IGNORE,
1667 : true, // 'out' by parameter sweep inversion
1668 : false // scale isotrophically to target size
1669 : },
1670 : {
1671 : // mapped to BoxSnakesWipe(fourBox=true):
1672 : animations::TransitionType::BOXSNAKESWIPE,
1673 : animations::TransitionSubType::FOURBOXVERTICAL, // (344)
1674 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1675 : 90.0, // rotation
1676 : 1.0, // no scaling
1677 : 1.0, // no scaling
1678 : TransitionInfo::REVERSEMETHOD_IGNORE,
1679 : true, // 'out' by parameter sweep inversion
1680 : false // scale isotrophically to target size
1681 : },
1682 : {
1683 : // mapped to BoxSnakesWipe(fourBox=true):
1684 : animations::TransitionType::BOXSNAKESWIPE,
1685 : animations::TransitionSubType::FOURBOXHORIZONTAL, // (345)
1686 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1687 : 0.0, // no rotation
1688 : 1.0, // no scaling
1689 : 1.0, // no scaling
1690 : TransitionInfo::REVERSEMETHOD_IGNORE,
1691 : true, // 'out' by parameter sweep inversion
1692 : false // scale isotrophically to target size
1693 : },
1694 :
1695 : {
1696 : // mapped to WaterfallWipe:
1697 : animations::TransitionType::WATERFALLWIPE,
1698 : animations::TransitionSubType::VERTICALLEFT, // (350)
1699 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1700 : 0.0, // no rotation
1701 : 1.0, // no scaling
1702 : 1.0, // no scaling
1703 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1704 : true, // 'out' by parameter sweep inversion
1705 : false // scale isotrophically to target size
1706 : },
1707 : {
1708 : // mapped to WaterfallWipe (flipOnYAxis=true):
1709 : animations::TransitionType::WATERFALLWIPE,
1710 : animations::TransitionSubType::VERTICALRIGHT, // (351)
1711 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1712 : 0.0, // no rotation
1713 : 1.0, // no scaling
1714 : 1.0, // no scaling
1715 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1716 : true, // 'out' by parameter sweep inversion
1717 : false // scale isotrophically to target size
1718 : },
1719 : {
1720 : // mapped to WaterfallWipe (flipOnYAxis=true):
1721 : animations::TransitionType::WATERFALLWIPE,
1722 : animations::TransitionSubType::HORIZONTALLEFT, // (352)
1723 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1724 : -90.0, // rotation
1725 : 1.0, // no scaling
1726 : 1.0, // no scaling
1727 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1728 : true, // 'out' by parameter sweep inversion
1729 : false // scale isotrophically to target size
1730 : },
1731 : {
1732 : // mapped to WaterfallWipe, flipOnYAxis=false:
1733 : animations::TransitionType::WATERFALLWIPE,
1734 : animations::TransitionSubType::HORIZONTALRIGHT, // (353)
1735 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
1736 : 90.0, // rotation
1737 : 1.0, // no scaling
1738 : 1.0, // no scaling
1739 : TransitionInfo::REVERSEMETHOD_ROTATE_180,
1740 : true, // 'out' by parameter sweep inversion
1741 : false // scale isotrophically to target size
1742 : },
1743 :
1744 : {
1745 : animations::TransitionType::PUSHWIPE,
1746 : animations::TransitionSubType::FROMLEFT,
1747 : TransitionInfo::TRANSITION_SPECIAL,
1748 : // TODO(F2): Setup parameters
1749 : 0.0, // no rotation
1750 : 1.0, // no scaling
1751 : 1.0, // no scaling
1752 : TransitionInfo::REVERSEMETHOD_IGNORE,
1753 : true, // 'out' by parameter sweep inversion
1754 : false // scale isotrophically to target size
1755 : },
1756 : {
1757 : animations::TransitionType::PUSHWIPE,
1758 : animations::TransitionSubType::FROMTOP,
1759 : TransitionInfo::TRANSITION_SPECIAL,
1760 : // TODO(F2): Setup parameters
1761 : 0.0, // no rotation
1762 : 1.0, // no scaling
1763 : 1.0, // no scaling
1764 : TransitionInfo::REVERSEMETHOD_IGNORE,
1765 : true, // 'out' by parameter sweep inversion
1766 : false // scale isotrophically to target size
1767 : },
1768 : {
1769 : animations::TransitionType::PUSHWIPE,
1770 : animations::TransitionSubType::FROMRIGHT,
1771 : TransitionInfo::TRANSITION_SPECIAL,
1772 : // TODO(F2): Setup parameters
1773 : 0.0, // no rotation
1774 : 1.0, // no scaling
1775 : 1.0, // no scaling
1776 : TransitionInfo::REVERSEMETHOD_IGNORE,
1777 : true, // 'out' by parameter sweep inversion
1778 : false // scale isotrophically to target size
1779 : },
1780 : {
1781 : animations::TransitionType::PUSHWIPE,
1782 : animations::TransitionSubType::FROMBOTTOM,
1783 : TransitionInfo::TRANSITION_SPECIAL,
1784 : // TODO(F2): Setup parameters
1785 : 0.0, // no rotation
1786 : 1.0, // no scaling
1787 : 1.0, // no scaling
1788 : TransitionInfo::REVERSEMETHOD_IGNORE,
1789 : true, // 'out' by parameter sweep inversion
1790 : false // scale isotrophically to target size
1791 : },
1792 : {
1793 : animations::TransitionType::PUSHWIPE,
1794 : animations::TransitionSubType::FROMBOTTOMRIGHT,
1795 : TransitionInfo::TRANSITION_SPECIAL,
1796 : // TODO(F2): Setup parameters
1797 : 0.0, // no rotation
1798 : 1.0, // no scaling
1799 : 1.0, // no scaling
1800 : TransitionInfo::REVERSEMETHOD_IGNORE,
1801 : true, // 'out' by parameter sweep inversion
1802 : false // scale isotrophically to target size
1803 : },
1804 : {
1805 : animations::TransitionType::PUSHWIPE,
1806 : animations::TransitionSubType::FROMBOTTOMLEFT,
1807 : TransitionInfo::TRANSITION_SPECIAL,
1808 : // TODO(F2): Setup parameters
1809 : 0.0, // no rotation
1810 : 1.0, // no scaling
1811 : 1.0, // no scaling
1812 : TransitionInfo::REVERSEMETHOD_IGNORE,
1813 : true, // 'out' by parameter sweep inversion
1814 : false // scale isotrophically to target size
1815 : },
1816 : {
1817 : animations::TransitionType::PUSHWIPE,
1818 : animations::TransitionSubType::FROMTOPRIGHT,
1819 : TransitionInfo::TRANSITION_SPECIAL,
1820 : // TODO(F2): Setup parameters
1821 : 0.0, // no rotation
1822 : 1.0, // no scaling
1823 : 1.0, // no scaling
1824 : TransitionInfo::REVERSEMETHOD_IGNORE,
1825 : true, // 'out' by parameter sweep inversion
1826 : false // scale isotrophically to target size
1827 : },
1828 : {
1829 : animations::TransitionType::PUSHWIPE,
1830 : animations::TransitionSubType::FROMTOPLEFT,
1831 : TransitionInfo::TRANSITION_SPECIAL,
1832 : // TODO(F2): Setup parameters
1833 : 0.0, // no rotation
1834 : 1.0, // no scaling
1835 : 1.0, // no scaling
1836 : TransitionInfo::REVERSEMETHOD_IGNORE,
1837 : true, // 'out' by parameter sweep inversion
1838 : false // scale isotrophically to target size
1839 : },
1840 : {
1841 : animations::TransitionType::PUSHWIPE,
1842 : animations::TransitionSubType::COMBHORIZONTAL,
1843 : TransitionInfo::TRANSITION_SPECIAL,
1844 : // TODO(F2): Setup parameters
1845 : 0.0, // no rotation
1846 : 1.0, // no scaling
1847 : 1.0, // no scaling
1848 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1849 : true, // 'out' by parameter sweep inversion
1850 : false // scale isotrophically to target size
1851 : },
1852 : {
1853 : animations::TransitionType::PUSHWIPE,
1854 : animations::TransitionSubType::COMBVERTICAL,
1855 : TransitionInfo::TRANSITION_SPECIAL,
1856 : // TODO(F2): Setup parameters
1857 : 0.0, // no rotation
1858 : 1.0, // no scaling
1859 : 1.0, // no scaling
1860 : TransitionInfo::REVERSEMETHOD_FLIP_X,
1861 : true, // 'out' by parameter sweep inversion
1862 : false // scale isotrophically to target size
1863 : },
1864 : {
1865 : animations::TransitionType::SLIDEWIPE,
1866 : animations::TransitionSubType::FROMLEFT,
1867 : TransitionInfo::TRANSITION_SPECIAL,
1868 : // TODO(F2): Setup parameters
1869 : 0.0, // no rotation
1870 : 1.0, // no scaling
1871 : 1.0, // no scaling
1872 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1873 : true, // 'out' by parameter sweep inversion
1874 : false // scale isotrophically to target size
1875 : },
1876 : {
1877 : animations::TransitionType::SLIDEWIPE,
1878 : animations::TransitionSubType::FROMTOP,
1879 : TransitionInfo::TRANSITION_SPECIAL,
1880 : // TODO(F2): Setup parameters
1881 : 0.0, // no rotation
1882 : 1.0, // no scaling
1883 : 1.0, // no scaling
1884 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1885 : true, // 'out' by parameter sweep inversion
1886 : false // scale isotrophically to target size
1887 : },
1888 : {
1889 : animations::TransitionType::SLIDEWIPE,
1890 : animations::TransitionSubType::FROMRIGHT,
1891 : TransitionInfo::TRANSITION_SPECIAL,
1892 : // TODO(F2): Setup parameters
1893 : 0.0, // no rotation
1894 : 1.0, // no scaling
1895 : 1.0, // no scaling
1896 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1897 : true, // 'out' by parameter sweep inversion
1898 : false // scale isotrophically to target size
1899 : },
1900 : {
1901 : animations::TransitionType::SLIDEWIPE,
1902 : animations::TransitionSubType::FROMBOTTOM,
1903 : TransitionInfo::TRANSITION_SPECIAL,
1904 : // TODO(F2): Setup parameters
1905 : 0.0, // no rotation
1906 : 1.0, // no scaling
1907 : 1.0, // no scaling
1908 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1909 : true, // 'out' by parameter sweep inversion
1910 : false // scale isotrophically to target size
1911 : },
1912 : {
1913 : animations::TransitionType::SLIDEWIPE,
1914 : animations::TransitionSubType::FROMBOTTOMRIGHT,
1915 : TransitionInfo::TRANSITION_SPECIAL,
1916 : // TODO(F2): Setup parameters
1917 : 0.0, // no rotation
1918 : 1.0, // no scaling
1919 : 1.0, // no scaling
1920 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1921 : true, // 'out' by parameter sweep inversion
1922 : false // scale isotrophically to target size
1923 : },
1924 : {
1925 : animations::TransitionType::SLIDEWIPE,
1926 : animations::TransitionSubType::FROMTOPRIGHT,
1927 : TransitionInfo::TRANSITION_SPECIAL,
1928 : // TODO(F2): Setup parameters
1929 : 0.0, // no rotation
1930 : 1.0, // no scaling
1931 : 1.0, // no scaling
1932 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1933 : true, // 'out' by parameter sweep inversion
1934 : false // scale isotrophically to target size
1935 : },
1936 : {
1937 : animations::TransitionType::SLIDEWIPE,
1938 : animations::TransitionSubType::FROMTOPLEFT,
1939 : TransitionInfo::TRANSITION_SPECIAL,
1940 : // TODO(F2): Setup parameters
1941 : 0.0, // no rotation
1942 : 1.0, // no scaling
1943 : 1.0, // no scaling
1944 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1945 : true, // 'out' by parameter sweep inversion
1946 : false // scale isotrophically to target size
1947 : },
1948 : {
1949 : animations::TransitionType::SLIDEWIPE,
1950 : animations::TransitionSubType::FROMBOTTOMLEFT,
1951 : TransitionInfo::TRANSITION_SPECIAL,
1952 : // TODO(F2): Setup parameters
1953 : 0.0, // no rotation
1954 : 1.0, // no scaling
1955 : 1.0, // no scaling
1956 : TransitionInfo::REVERSEMETHOD_IGNORE, // special code for this transition
1957 : true, // 'out' by parameter sweep inversion
1958 : false // scale isotrophically to target size
1959 : },
1960 : {
1961 : animations::TransitionType::FADE,
1962 : animations::TransitionSubType::CROSSFADE,
1963 : TransitionInfo::TRANSITION_SPECIAL,
1964 : // TODO(F2): Setup parameters
1965 : 0.0, // no rotation
1966 : 1.0, // no scaling
1967 : 1.0, // no scaling
1968 : TransitionInfo::REVERSEMETHOD_IGNORE,
1969 : true, // 'out' by parameter sweep inversion
1970 : false // scale isotrophically to target size
1971 : },
1972 : {
1973 : animations::TransitionType::FADE,
1974 : animations::TransitionSubType::FADETOCOLOR,
1975 : TransitionInfo::TRANSITION_SPECIAL,
1976 : // TODO(F2): Setup parameters
1977 : 0.0, // no rotation
1978 : 1.0, // no scaling
1979 : 1.0, // no scaling
1980 : TransitionInfo::REVERSEMETHOD_IGNORE,
1981 : true, // 'out' by parameter sweep inversion
1982 : false // scale isotrophically to target size
1983 : },
1984 : {
1985 : animations::TransitionType::FADE,
1986 : animations::TransitionSubType::FADEFROMCOLOR,
1987 : TransitionInfo::TRANSITION_SPECIAL,
1988 : // TODO(F2): Setup parameters
1989 : 0.0, // no rotation
1990 : 1.0, // no scaling
1991 : 1.0, // no scaling
1992 : TransitionInfo::REVERSEMETHOD_IGNORE,
1993 : true, // 'out' by parameter sweep inversion
1994 : false // scale isotrophically to target size
1995 : },
1996 : {
1997 : animations::TransitionType::FADE,
1998 : animations::TransitionSubType::FADEOVERCOLOR,
1999 : TransitionInfo::TRANSITION_SPECIAL,
2000 : // TODO(F2): Setup parameters
2001 : 0.0, // no rotation
2002 : 1.0, // no scaling
2003 : 1.0, // no scaling
2004 : TransitionInfo::REVERSEMETHOD_IGNORE,
2005 : true, // 'out' by parameter sweep inversion
2006 : false // scale isotrophically to target size
2007 : },
2008 : // this is the cut through black fade (does not fade, but does a
2009 : // hard cut)
2010 : {
2011 : animations::TransitionType::BARWIPE,
2012 : animations::TransitionSubType::FADEOVERCOLOR,
2013 : TransitionInfo::TRANSITION_SPECIAL,
2014 : // TODO(F2): Setup parameters
2015 : 0.0, // no rotation
2016 : 1.0, // no scaling
2017 : 1.0, // no scaling
2018 : TransitionInfo::REVERSEMETHOD_IGNORE,
2019 : true, // 'out' by parameter sweep inversion
2020 : false // scale isotrophically to target size
2021 : },
2022 :
2023 : {
2024 : // mapped to RandomWipe:
2025 : animations::TransitionType::RANDOMBARWIPE,
2026 : animations::TransitionSubType::VERTICAL,
2027 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
2028 : 90.0, // rotation
2029 : 1.0, // no scaling
2030 : 1.0, // no scaling
2031 : TransitionInfo::REVERSEMETHOD_IGNORE,
2032 : true, // 'out' by parameter sweep inversion
2033 : false // scale isotrophically to target size
2034 : },
2035 : {
2036 : // mapped to RandomWipe:
2037 : animations::TransitionType::RANDOMBARWIPE,
2038 : animations::TransitionSubType::HORIZONTAL,
2039 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
2040 : 0.0, // no rotation
2041 : 1.0, // no scaling
2042 : 1.0, // no scaling
2043 : TransitionInfo::REVERSEMETHOD_IGNORE,
2044 : true, // 'out' by parameter sweep inversion
2045 : false // scale isotrophically to target size
2046 : },
2047 :
2048 : {
2049 : // mapped to CheckerBoard:
2050 : animations::TransitionType::CHECKERBOARDWIPE,
2051 : animations::TransitionSubType::DOWN,
2052 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
2053 : 90.0, // rotation
2054 : 1.0, // no scaling
2055 : 1.0, // no scaling
2056 : TransitionInfo::REVERSEMETHOD_FLIP_Y,
2057 : true, // 'out' by parameter sweep inversion
2058 : false // scale isotrophically to target size
2059 : },
2060 : {
2061 : // mapped to CheckerBoard:
2062 : animations::TransitionType::CHECKERBOARDWIPE,
2063 : animations::TransitionSubType::ACROSS, // (default)
2064 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
2065 : 0.0, // no rotation
2066 : 1.0, // no scaling
2067 : 1.0, // no scaling
2068 : TransitionInfo::REVERSEMETHOD_FLIP_X,
2069 : true, // 'out' by parameter sweep inversion
2070 : false // scale isotrophically to target size
2071 : },
2072 :
2073 : {
2074 : // mapped to RandomWipe:
2075 : animations::TransitionType::DISSOLVE,
2076 : animations::TransitionSubType::DEFAULT,
2077 : TransitionInfo::TRANSITION_CLIP_POLYPOLYGON,
2078 : 0.0, // no rotation
2079 : 1.0, // no scaling
2080 : 1.0, // no scaling
2081 : TransitionInfo::REVERSEMETHOD_IGNORE,
2082 : true, // 'out' by parameter sweep inversion
2083 : true // scale isotrophically to target size
2084 : },
2085 :
2086 :
2087 : // NOTE: This entry MUST be the last, to keep
2088 : // createSlideTransition() from infinite recursion. Because
2089 : // getRandomTransitionInfo() below will exclude the last entry of
2090 : // the table from the random number generation.
2091 :
2092 : {
2093 : // specially handled
2094 : animations::TransitionType::RANDOM,
2095 : animations::TransitionSubType::DEFAULT,
2096 : TransitionInfo::TRANSITION_SPECIAL,
2097 : 0.0, // no rotation
2098 : 1.0, // no scaling
2099 : 1.0, // no scaling
2100 : TransitionInfo::REVERSEMETHOD_IGNORE,
2101 : true, // 'out' by parameter sweep inversion
2102 : true // scale isotrophically to target size
2103 : }
2104 :
2105 : // NOTE: DON'T add after this entry! See comment above!
2106 :
2107 : };
2108 :
2109 : } // anon namespace
2110 :
2111 0 : const TransitionInfo* TransitionFactory::getTransitionInfo(
2112 : sal_Int16 nTransitionType, sal_Int16 nTransitionSubType )
2113 : {
2114 : static const TransitionInfo* pTableEnd = lcl_transitionInfo+
2115 : SAL_N_ELEMENTS(lcl_transitionInfo);
2116 :
2117 : const TransitionInfo* pRes = ::std::find_if(
2118 : lcl_transitionInfo, pTableEnd,
2119 : TransitionInfo::Comparator( nTransitionType,
2120 0 : nTransitionSubType ) );
2121 0 : if (pRes != pTableEnd)
2122 0 : return pRes;
2123 : else
2124 0 : return NULL;
2125 : }
2126 :
2127 0 : const TransitionInfo* TransitionFactory::getRandomTransitionInfo()
2128 : {
2129 0 : return lcl_transitionInfo + getRandomOrdinal(
2130 : SAL_N_ELEMENTS(lcl_transitionInfo)
2131 0 : - 1 /* exclude random transition at end of table */ );
2132 : }
2133 :
2134 : } // namespace internal
2135 : } // namespace presentation
2136 :
2137 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|