Algorithm-Easing

 view release on metacpan or  search on metacpan

lib/Algorithm/Easing.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 0;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation_mediator->ease_out($t,$b,$c,$d)

            # plot
            ...
        }

lib/Algorithm/Easing/Backdraft.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Bounce.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Circular.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Cubic.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Exponential.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Linear.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Quadratic.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Quartinion.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Quintonion.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

lib/Algorithm/Easing/Sinusoidal.pm  view on Meta::CPAN


        # total time for eased translation as a real positive integer value
        my $d = 2.5;

        # begin
        my $b = 0;

        # change
        my $c = 240;

        # time passed in seconds as a real positive integer between each frame
        my $frame_time = 0.0625;

        my @p = [319,0];

        for(my $t = 0; $t < 2.5; $t += 0.0625) {
            $p[1] = $translation->ease_out($t,$b,$c,$d)

            # plot
            ...;
        }

t/1.t  view on Meta::CPAN

    my ($name, $ease, $max) = @_;
    # total time for eased translation as a real positive integer value
    my $d = 1.0;
    
    # begin
    my $b = 0;
    
    # change
    my $c = 80;
    
    # time passed in seconds as a real positive integer between each frame
    my $frame_time = 0.0025;

    my ($mediator,$x,$old_x) = (Algorithm::Easing::Mediator->new(kind => $ease),0,-1);
    
    print "\nTesting ${name} ease in.";
    print "\n";
    
    for (my $t = 0; $t <= $d + $frame_time; $t += $frame_time) {
        $x = $mediator->ease_in($t,$b,$c,$d);
        $x += 80 - $max;
        if ($x != $old_x && $x < 80 && $x > 0) {
            my ($line, $pad) = ('', '');
            $line = '#' x sprintf('%i', $x);
            $pad = ' ' x sprintf('%i', 80 - $x) if $x <= 80;
            print "\b" x 80;
            print sprintf("%s%s", $line, $pad);
            usleep(sprintf("%i",$frame_time * 1000));
        }
        $old_x = $x;
    }
    
    print "\n";
    
    ok(sprintf("%i",$x) >= 80,"The ${name} ease in test has completed with successful result.");
    
    1;
}

t/1.t  view on Meta::CPAN

    
    # total time for eased translation as a real positive integer value
    my $d = 1.0;
    
    # begin
    my $b = 0;
    
    # change
    my $c = 80;
    
    # time passed in seconds as a real positive integer between each frame
    my $frame_time = 0.0025;

    my ($mediator,$x,$old_x) = (Algorithm::Easing::Mediator->new(kind => $ease),0,-1);
    
    print "\nTesting ${name} ease in and out.";
    print "\n";
    
    for (my $t = 0; $t <= $d + $frame_time; $t += $frame_time) {
        $x = $mediator->ease_both($t,$b,$c,$d);
        $x += 80 - $max;
        if ($x != $old_x && $x < 80 && $x > 0) {
            my ($line, $pad) = ('', '');
            $line = '#' x sprintf('%i', $x);
            $pad = ' ' x sprintf('%i', 80 - $x) if $x <= 80;
            print "\b" x 80;
            print sprintf("%s%s", $line, $pad);
            usleep(sprintf("%i",$frame_time * 1000));
        }
        $old_x = $x;
    }
    
    print "\n";
    
    ok(sprintf("%i",$x) >= 80,"The ${name} ease in and out test was completed with successful results.");
    
    1;
}

t/1.t  view on Meta::CPAN

    my ($name, $ease, $max) = @_;
    # total time for eased translation as a real positive integer value
    my $d = 1.0;
    
    # begin
    my $b = 0;
    
    # change
    my $c = 80;
    
    # time passed in seconds as a real positive integer between each frame
    my $frame_time = 0.0025;

    my ($mediator,$x,$old_x) = (Algorithm::Easing::Mediator->new(kind => $ease),0,-1);
    
    print "\nTesting ${name} ease out.";
    print "\n";
    
    for (my $t = 0; $t <= $d + $frame_time; $t += $frame_time) {
        $x = $mediator->ease_out($t,$b,$c,$d);
        $x += 80 - $max;
        if ($x != $old_x && $x < 80 && $x > 0) {
            my ($line, $pad) = ('', '');
            $line = '#' x sprintf('%i', $x);
            $pad = ' ' x sprintf('%i', 80 - $x) if $x <= 80;
            print "\b" x 80;
            print sprintf("%s%s", $line, $pad);
            usleep(sprintf("%i",$frame_time * 1000));
        }
        $old_x = $x;
    }
    
    print "\n";
    
    ok(sprintf("%i",$x) >= 80,"The ${name} ease out test was completed with succesful result.");
    
    1;
}



( run in 1.684 second using v1.01-cache-2.11-cpan-df04353d9ac )