Solved

Using the blur filter with the tween class

Posted on 2008-06-11
7
1,068 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

 

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

MS Dynamics Made Instantly Simpler

Make Your Microsoft Dynamics Investment Count  & Drastically Decrease Training Time by Providing Intuitive Step-By-Step WalkThru Tutorials.

Question has a verified solution.

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

This is intended to introduce all collision detection principles in flash, their strengths, weaknesses and workarounds. The main method for Collision Detection in flash is using hitTestObject. But unless you'll be pushing rectangular shapes without …
I know the transition can be hard. We got used to the ease of use ActionScript 2 had, but honestly, it became problematic later on, especially if designers were involved in the project and found it easy to add code as they saw fit. So, this artic…
The goal of the tutorial is to teach the user how to set there setting in Adobe Flash Media Live Encoder and YouTube for optimal video and audio quality.
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.

724 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