Thursday, July 29th 2010, 1:40pm UTC+2

You are not logged in.

  • Login
  • Register

public

Moderator

Posts: 546

Location: Dessau

1

Monday, April 23rd 2007, 11:21am

Tween Package in as3 [Fresh-Tween]

hab mich ran gestetzt und nen tween package programmiert....wobwi es auch möglich is tween nacheinander auszuführen mithilfe der TweenSequencer klasse...ebenso dazu gekommen sind neue eigenschaften die man natürlichauch tweenen kan (brightness, contrast, saturation)

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package fresh scripted by public (Sebastian Vogt) 
contact:	 	dj_public@hotmail.de

class fresh.events.TweenEvent extends Event
constantes:		TweenEvent.TWEEN_START
				TweenEvent.TWEEN_CHANGE
				TweenEvent.TWEEN_FINISH
				TweenEvent.TWEEN_SEQUENCER_START
				TweenEvent.TWEEN_SEQUENCER_FINISH

class fresh.tween.Tween extends flash.event.EventDispatcher
Properties:		isTween:Boolean = false [read]
Konstruktor:	Tween(obj:Object, prop:String, easing:Function, begin:Number, finish:Number, duration:Number)
Methodes:		pause():void
				play():void
				Tween.dispose():void
				
class fresh.tween.TweenSprite extends flash.display.Sprite
Properties:		isTween:Boolean = false [read]
Methodes:		locTo(x:Number, y:Number, easing:Function, duration:Number, callback:Function = null):void
				alphaTo(alpha:Number, easing:Function, duration:Number, callback:Function = null)
				sizeTo(width:Number, height:Number, easing:Function, duration:Number, callback:Function = null):void
				scaleTo(scaleX:Number, scaleY:Number, easing:Function, duration:Number, callback:Function = null):void
				rotateTo(rotation:Number, easing:Function, duration:Numberm, callback:Function = null):void
				
class fresh.tween.TweenSpriteAdvanced extends fresh.tween.TweenSprite
Properties:		blurX:Number = 0 [read, write]
				blurY:Number = 0 [read, write]
				blurQuality:Number = 1 [read, write]
				brightness:Number = 0 [read, write] [-255 bis 255]
				contrast:Number = 0 [read, write] [-1 bis 1]
				saturation:Number = .1 [read, write] [-1 bis 1]
				colorMatrix:Array = ColorMatrix.NONE [read, write]
Methodes:		blurTo(blurX:Number, blurY:Number, easing:Function, duration:Number, callback:Function = null):void
				brightnessTo(brightness:Number, easing:Function, duration:Number, callback:Function = null):void
				contrastTo(contrasr:Number, easing:Function, duration:Number, callback:Function = null):void
				saturationTo(saturation:Number, easing:Function, duration:Number, callback:Function = null):void
				
class fresh.tween.TweenSequencer extends flash.events.EventDispatcher
Properties:		sequence:Array [read, write] example....    sequence[0] = {obj:sprite, func:"alphaTo" args:[.1, Strong.easeOut, 100]};
Methodes:		start():void

example_Tween anschaun

ActionScript-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import fresh.tween.*;
import fresh.events.*;
import fresh.tween.easing.*;
import flash.display.*;
import flash.events.*;


var _sprite:Sprite createRect(002002000xff00ff);
addChild(_sprite);
// Tween(obj:Object, prop:String, easing:Function, begin:Number, finish:Number, duration:Number)
var tween:Tween = new Tween(_sprite"alpha"Strong.easeOut_sprite.alpha.1200);
/**
*     Tween Events
*/
tween.addEventListener(TweenEvent.TWEEN_STARTonTweenStart);
tween.addEventListener(TweenEvent.TWEEN_CHANGEonTweenChange);
tween.addEventListener(TweenEvent.TWEEN_FINISHonTweenFinish);
stage.addEventListener(MouseEvent.MOUSE_DOWNmd);
stage.addEventListener(MouseEvent.MOUSE_UPmu);
/**
*    Handler
*/
function onTweenStart(event:TweenEvent):void{
    trace("TWEEN_START");
}
function onTweenChange(event:TweenEvent):void{
        trace("TWEEN_CHANGE");
}
function onTweenFinish(event:TweenEvent):void{
    trace("TWEEN_FINISH");
}


function md(event:MouseEvent):void{
    tween.pause();
}
function mu(event:MouseEvent):void{
    tween.play();
}



function createRect(x:Numbery:Numberw:Numberh:Numbercolor:Number):Sprite{
    var s:Sprite = new Sprite();
    s.graphics.moveTo(00);
    s.graphics.lineStyle();
    s.graphics.beginFill(color);
    s.graphics.drawRect(00wh);
    return s;
}

example TweenSprite anscahun

ActionScript-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import fresh.tween.*;
import fresh.events.*;
import fresh.tween.easing.*;


var _sprite:TweenSprite createRect(002002000xff00ff);
addChild(_sprite);


// locTo(x:Number, y:Number, easing:Function, duration):void
_sprite.locTo(200200Elastic.easeOut100);




_sprite.addEventListener(TweenEvent.TWEEN_STARTonTweenStart);
_sprite.addEventListener(TweenEvent.TWEEN_FINISHonTweenFinish);


function onTweenStart(event:TweenEvent):void{
    trace(event.target+" TWEEN_START");
}
function onTweenFinish(event:TweenEvent):void{
    trace(event.target+" TWEEN_FINISH");
}




function createRect(x:Numbery:Numberw:Numberh:Numbercolor:Number):TweenSprite{
    var s:TweenSprite = new TweenSprite();
    s.graphics.moveTo(00);
    s.graphics.lineStyle();
    s.graphics.beginFill(color);
    s.graphics.drawRect(00wh);
    return s;
}

example_TweenSpriteAdvanced anschaun

ActionScript-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import fresh.tween.*;
import fresh.events.*;
import fresh.tween.easing.*;



with(pic_mc){
    brightness 100;
    saturation .3;
    contrast .4;
    
    contrastTo(.1Strong.easeOut150);
    brightnessTo(0Strong.easeOut150);
    saturationTo(.1Strong.easeOut150);
    
    addEventListener(TweenEvent.TWEEN_STARTonTweenStart);
    addEventListener(TweenEvent.TWEEN_FINISHonTweenFinish);
}



function onTweenStart(event:TweenEvent):void{
    trace(event.target+" TWEEN_START");
}
function onTweenFinish(event:TweenEvent):void{
    trace(event.target+" TWEEN_FINISH");
}

example_TweenSequencer anschaun

ActionScript-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import fresh.tween.*;
import fresh.events.*;
import fresh.tween.easing.*;


var _sprite:TweenSprite createRect(002002000xff00ff);
addChild(_sprite);


var s:TweenSequencer = new TweenSequencer();

s.sequence[0] = {obj:_spritefunc:"locTo"args:[200200Strong.easeOut80]};
s.sequence[1] = {obj:_spritefunc:"sizeTo"args:[10050Elastic.easeOut100]};
s.sequence[2] = {obj:_spritefunc:"locTo"args:[00None.easeNone20]};
s.sequence[3] = {obj:_spritefunc:"sizeTo"args:[stage.stageWidthstage.stageHeightStrong.easeOut40]};
s.sequence[4] = {obj:_spritefunc:"alphaTo"args:[0Strong.easeOut200]};






s.addEventListener(TweenEvent.TWEEN_SEQUENCER_STARTonSequencerStart);
s.addEventListener(TweenEvent.TWEEN_SEQUENCER_FINISHonSequencerFinish);

s.start();


function onSequencerStart(event:TweenEvent):void{
    trace(event.target+" TWEEN_SEQUENCER_START");
}
function onSequencerFinish(event:TweenEvent):void{
    trace(event.target+" TWEEN_SEQUENCER_FINISH");
}




function createRect(x:Numbery:Numberw:Numberh:Numbercolor:Number):TweenSprite{
    var s:TweenSprite = new TweenSprite();
    s.graphics.moveTo(00);
    s.graphics.lineStyle();
    s.graphics.beginFill(color);
    s.graphics.drawRect(00wh);
    return s;
}
public has attached the following file:
  • fresh.zip (577.07 kB - 27 times downloaded - Last download: Mar 28th 2010, 11:20pm)
Gänsefleisch ma ihr´n Hund online!?

Inder nett...
  • Go to the top of the page

public

Moderator

Posts: 546

Location: Dessau

2

Monday, April 23rd 2007, 3:09pm

update:

so nun kann man die fps auch dynamisch regeln einfach...

Tween.fps = 50;
public has attached the following file:
  • fresh_new.zip (888.01 kB - 20 times downloaded - Last download: Mar 28th 2010, 11:21pm)
Gänsefleisch ma ihr´n Hund online!?

Inder nett...
  • Go to the top of the page

public

Moderator

Posts: 546

Location: Dessau

3

Monday, April 23rd 2007, 11:13pm

so .....bin ja net untaätig .....da kommt heuet schon wiederdas nächste update.....

mann kann jetze ooche für die duration sekunden angeben indem man den nächsten parameter´(seconds) auf true etz....standrtmässig ist er auf false...


aber net verwirren lassen ne ausführliche doku kommt.......gerade für den tweensequencer womit es ohne probleme möglich is auch animierte intros(film trailer oder der gleichen natürlich ausgeschlossen....as is ja net gleich aftereffects) mit reinem as zu erstellen.....
public has attached the following file:
  • fresh3.zip (887.92 kB - 48 times downloaded - Last download: Mar 28th 2010, 11:21pm)
Gänsefleisch ma ihr´n Hund online!?

Inder nett...
  • Go to the top of the page

4

Saturday, August 25th 2007, 3:24pm

Hi public!

Danke erstmal für Dein Script, welches ich gestern entdeckt habe! :)

Leider habe ich schon eine lange Zeit in Flash nichts mehr gemacht und habe nun Anlaufschwierigkeiten mit Deinem Script.
Wenn ich Deine beigefügten Testdateien ausführe, klappt das auch ohne Probleme. Aber wenn ich eine neue Datei erstelle und dann den Actionscript-Code einbinde, bekomme ich beim ausführen des Films folgende Meldung:

Source code

1
1120: Zugriff auf eine nicht definierte Eigenschaft bubble.


Ich weiß nicht woran das liegt. Hier der Link zu der von mir erstellten Datei:

flashTest

Auch habe ich nicht raus gefunden, wie ich einen Tween mit Deinem Script auf eine Grafik, bzw. ein bestehendes Objekt anwenden kann. Könntest Du mir das vielleicht auch bitte erklären?

Gruss
Thargor

This post has been edited 1 times, last edit by "thargor" (Aug 25th 2007, 3:25pm)

  • Go to the top of the page

Posts: 4

Location: München

5

Tuesday, September 18th 2007, 9:56am

hm, irgendwie bekomme ich die Datei nicht zum Laufen. In der Ausgabe bekomme ich dreimal die Fehlermeldung:

1046: Typ wurde nicht gefunden oder war keine Kompilierungszeit-Konstante: TweenEvent.

aber eigentlich sind die Ziele doch in der .as Datei genau definiert. Wisst ihr vielleicht woran es liegen kann?
Gruß
  • Go to the top of the page