4 sys.path.insert(0, os.path.join(
5 os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
9 from lottie
import objects
11 from lottie
import Point, Color
13 an = objects.Animation(180)
15 layer = objects.ShapeLayer()
18 group = layer.add_shape(objects.Group())
19 ball = group.add_shape(objects.Ellipse())
20 ball.size.value =
Point(10, 10)
22 r1 = group.add_shape(objects.Rect())
23 r1.size.value =
Point(50, 10)
25 r2 = group.add_shape(objects.Group())
26 r2.add_shape(objects.Rect()).size.value =
Point(50, 10)
29 group.add_shape(objects.Fill(Color(0, 1, 0)))
31 group = layer.add_shape(objects.Group())
32 bez = group.add_shape(objects.Path())
34 bez.shape.value.add_point(
Point(256, 256),
Point(-64, -64),
Point(-64, 64))
35 bez.shape.value.add_point(
Point(256, 256+120),
Point(0, 0),
Point(0, 0))
36 group.add_shape(objects.Stroke(Color(1, 0, 0), 10))
44 follow_path(r2.position, bez.shape.value, 0, 90, 30,
False,
Point(-150, 0), 0, r2.rotation, 90)
45 follow_path(r2.position, bez.shape.value, 90, 180, 30,
True,
Point(-150, 0), 0, r2.rotation, 90)
47 script.script_main(an)
def follow_path(position_prop, bezier, start_time, end_time, n_keyframes, reverse=False, offset=NVector(0, 0), start_t=0, rotation_prop=None, rotation_offset=0)