[GIF] Parenting in GIF Loop Coder

本文介绍如何通过设置父级元素创建复杂的动画效果,利用Circle、Rect、Ray等形状,并使用Container隐藏不需要显示的父元素。

In this lesson, we look at how you can build up complex animations by assigning one shape as the parent of another, creating a branching display tree.

 

function onGLC(glc) {
    glc.loop();
//     glc.size(400, 400);
//     glc.setDuration(5);
//     glc.setFPS(20);
    glc.setMode('single');
    glc.setEasing(false);
    var list = glc.renderList,
        width = glc.w,
        height = glc.h,
        color = glc.color;

    // your code goes here:


    var Circle = list.addCircle({
        x: width / 2,
        y: height / 2,
        radius: 150,
        stroke: true,
        fill: false,
        rotation: [0,360]
    });
    
    list.addRect({
        x: 150,
        y: 0,
        w: [0, 100],
        h: 40,
        parent: Circle
    });
    
}

 

function onGLC(glc) {
    glc.loop();
//     glc.size(400, 400);
//     glc.setDuration(5);
//     glc.setFPS(20);
    glc.setMode('single');
    glc.setEasing(false);
    var list = glc.renderList,
        width = glc.w,
        height = glc.h,
        color = glc.color;

    // your code goes here:


    var ray1 = list.addRay({
        x: 0,
        y: height / 2,
        length: 100,
        angle: [-60,60]
    });
    
    var ray2 = list.addRay({
       x: 100,
        y:0,
        length: 100,
        angle: [120,-120],
        parent: ray1
    });
    
    var ray3 = list.addRay({
        x: 100,
        y: 0,
        length: 100,
        angle: [-60,60],
        parent: ray2
    })
    
}

 

If you don't need the parent to show, you can use Container:

function onGLC(glc) {
    glc.loop();
//     glc.size(400, 400);
//     glc.setDuration(5);
//     glc.setFPS(20);
    glc.setMode('single');
    glc.setEasing(false);
    var list = glc.renderList,
        width = glc.w,
        height = glc.h,
        color = glc.color;

    // your code goes here:


    var parent = list.addContainer({
        x: width / 2,
        y: height / 2,
        rotation: [0,360]
    })
    
    list.addText({
        x: 150,
        y: 0,
        text: "EGGHEAD",
        rotation: [360,0],
        parent: parent
    })
}

转载于:https://www.cnblogs.com/Answer1215/p/5716310.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值