Solved

Using the blur filter with the tween class

Posted on 2008-06-11
7
1,056 Views
Last Modified: 2012-05-05
Hi all,

I want to blur an object from say 25 to 0 using the blur filter and the tween class. So far I have:

var blur:Tween= new Tween(my_mc,"blurX",Strong.easeOut,45,0,2,true);
my_mc.filters = [new BlurFilter];

The object stays blurred at 45. I want it to go from 45 to no blur ie 0
Can you help, thanks.
0
Comment
Question by:systems_mitsui
  • 4
  • 3
7 Comments
 
LVL 18

Expert Comment

by:Antonio Estrada
ID: 21764216
Here you go:

-V
import mx.transitions.Tween;
import flash.filters.BlurFilter;
 
var myTween:Tween = new Tween(my_mc,"blur",Strong.easeOut,45,0,2,true);
myTween.onMotionChanged = function() {
	var blurFilter:BlurFilter;
	var filterArray:Array = new Array();
	blurFilter = new BlurFilter(my_mc.blur,my_mc.blur,2);
	filterArray.push(blurFilter);
	my_mc.filters = filterArray;
}

Open in new window

0
 

Author Comment

by:systems_mitsui
ID: 21764428
Hi,

I used your script but object is still staying blured, not going to 0
0
 
LVL 18

Expert Comment

by:Antonio Estrada
ID: 21764519
Interesting...

Here's a *.fla sample for you to check out.

http://evilrealm.polygonized.com/BlurTween.fla

-V
0
What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

 

Author Comment

by:systems_mitsui
ID: 21776719
Hi bud, you code worked.

However when I amended it to do a tween of X first, then use onMotionFinished to call a blur function afterwards it just doesn't move, then does a long blur.


How can I do X and Y tween, then invoke the onMotionfinished to do a blur, or more importantly do a blur as it moves across an  X or Y line [to simulate fast motion]
Here is the code I now have

import mx.transitions.Tween;
import flash.filters.BlurFilter;
 
 
var myTween:Tween =new Tween(my_mc,"_x",158.0,180.0,Bounce.easeOut,1,true);

 
 myTween.onMotionFinished=function() {

      var myTween:Tween = new Tween(my_mc,"blur",Strong.easeOut,45,0,2,true);

        var blurFilter:BlurFilter;
        var filterArray:Array = new Array();
        blurFilter = new BlurFilter(my_mc.blur,my_mc.blur,2);
        filterArray.push(blurFilter);
        my_mc.filters = filterArray;
}


0
 
LVL 18

Expert Comment

by:Antonio Estrada
ID: 21779504
Ah, you want to have 3 Tweens at the same time.

An _x Tween, a _y Tween and a blur Tween.

Here are three examples:

<code>

-V
/* Example 1: _x and blur Tweens (simulating fast motion) */
 
import mx.transitions.Tween;
import flash.filters.BlurFilter;
 
var xTween:Tween = new Tween(my_mc,"_x",Strong.easeOut,0,280,2,true);
var blurTween:Tween = new Tween(my_mc,"blur",Strong.easeOut,45,0,2,true);
blurTween.onMotionChanged = function() {
        var blurFilter:BlurFilter;
        var filterArray:Array = new Array();
        blurFilter = new BlurFilter(my_mc.blur,0,2);
        filterArray.push(blurFilter);
        my_mc.filters = filterArray;
}
 
/* Example 2: _y and blur Tweens (simulating fast motion) */
 
import mx.transitions.Tween;
import flash.filters.BlurFilter;
 
var yTween:Tween = new Tween(my_mc,"_y",Strong.easeOut,0,280,2,true);
var blurTween:Tween = new Tween(my_mc,"blur",Strong.easeOut,45,0,2,true);
blurTween.onMotionChanged = function() {
        var blurFilter:BlurFilter;
        var filterArray:Array = new Array();
        blurFilter = new BlurFilter(0,my_mc.blur,2);
        filterArray.push(blurFilter);
        my_mc.filters = filterArray;
}
 
/* Example 3: _x, _y and blur Tweens */
 
import mx.transitions.Tween;
import flash.filters.BlurFilter;
 
var xTween:Tween = new Tween(my_mc,"_x",Strong.easeOut,0,280,2,true);
var yTween:Tween = new Tween(my_mc,"_y",Strong.easeOut,0,280,2,true);
var blurTween:Tween = new Tween(my_mc,"blur",Strong.easeOut,45,0,2,true);
blurTween.onMotionChanged = function() {
        var blurFilter:BlurFilter;
        var filterArray:Array = new Array();
        blurFilter = new BlurFilter(my_mc.blur,my_mc.blur,2);
        filterArray.push(blurFilter);
        my_mc.filters = filterArray;
}

Open in new window

0
 
LVL 18

Accepted Solution

by:
Antonio Estrada earned 500 total points
ID: 21856872
So, did you try this out?

-V
0
 

Author Closing Comment

by:systems_mitsui
ID: 31476611
Sorry, been away on biz and hols. Yes it worked fine thank you
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I come across a lot of question about how to access things in the document class from a movieclip, or accessing something from a movieclip in the document class. It took me a while to figure this out but once I did it makes life so much easier. …
Here are some practices and techniques that can be adopted into your Flash/Flex application development process. Note: Not all "performance tips" provide an immediately-recognizable benefit.   This article does not include timing validation data,…
The goal of the tutorial is to teach the user how to select which audio input to use. Once you have an audio input plugged into the laptop or computer, you will go into the audio input settings and choose which audio input you want to use.
This Micro Tutorial will teach to how to utilize bit rate in Adobe Flash Media Live Encoder.

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question