actionScript中使用形狀、遮罩、混合和濾鏡

一、形狀類Shape
1.創建Shape類對象,調用其graphics屬性,在調用其相應的方法進行繪製即可。

 

二、對對象應用動態遮罩
1.使用遮罩需要明白三點,1)需要被遮罩的顯示對象(誰要被遮罩),2)作爲遮罩的顯示對象(拿什麼遮罩),3)將作爲遮罩的顯示對象賦值給需要被遮罩的顯示對象的mask屬性。

 

三、使用ActionScript創建可視化效果
1.混合模式類:BlendMode
2.動態濾鏡 :DropShadowFilter陰影濾鏡   BlurFilter模糊濾鏡

 

下面貼出極端flash中寫的actionscript的代碼,希望對大家有幫助:

 1.形狀類的使用

import flash.display.Shape;
//繪製矩形和圓角矩形
/*var rect:Shape = new Shape();
rect.graphics.beginFill(0xff0000);
rect.graphics.lineStyle(1,0x000000);
//rect.graphics.drawRect(0,0,100,200);//繪製矩形
rect.graphics.drawRoundRect(0,0,100,200,20);//繪製圓角矩形
rect.graphics.endFill();
addChild(rect);*/

//繪製圓形
var circle:Shape = new Shape();
var radius:uint = 75;
circle.graphics.beginFill(0xff0000);
circle.graphics.lineStyle(1,0x000000);
circle.graphics.drawCircle(0+radius,0+radius,radius);
circle.graphics.endFill();
addChild(circle);

2.遮罩和混合的使用(兩者建議別同時使用)

import flash.display.Loader;
import flash.events.Event;
import flash.net.URLRequest;
import flash.display.Shape;

//從外部加載圖片,爲圖片進行遮罩,使圖片變成圓角
var imageLoader:Loader = new Loader();
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHandler);
imageLoader.load(new URLRequest("http://www.focusonmedia.com/vqs/as3/cheese_and_crackers.jpg"));

function completeHandler(evt:Event):void{
	var roundRect:Shape = new Shape();
	roundRect.graphics.beginFill(0xff0000);
	roundRect.graphics.lineStyle(0,0x000000);
	roundRect.graphics.drawRoundRect(imageLoader.x,imageLoader.y,imageLoader.width,imageLoader.height,20);
	roundRect.graphics.endFill();
         	addChild(imageLoader);
	addChild(roundRect);
        // roundRect.blendMode = BlendMode.MULTIPLY;//混合模式使用
	imageLoader.mask = roundRect;//遮罩的使用
}



3.濾鏡的使用

import flash.display.Loader;
import flash.events.Event;
import flash.net.URLRequest;
import flash.display.Shape;
import flash.display.BlendMode;
import flash.filters.BlurFilter;
import flash.filters.DropShadowFilter;

//從外部加載圖片,爲圖片進行遮罩,使圖片變成圓角
var imageLoader:Loader = new Loader();
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHandler);
imageLoader.load(new URLRequest("http://www.focusonmedia.com/vqs/as3/cheese_and_crackers.jpg"));

function completeHandler(evt:Event):void{
	var blurFilter:BlurFilter = new BlurFilter(20,0,10);
	imageLoader.filters = [blurFilter];
	addChild(imageLoader);
}

var roundShope:Shape = new Shape();
roundShope.graphics.beginFill(0x0000ff);
roundShope.graphics.lineStyle(1,0x000fff);
roundShope.graphics.drawRoundRect(50,50,100,35,15);
roundShope.graphics.endFill();
var dropShawFilter:DropShadowFilter = new DropShadowFilter(5,45,0x000000,.25,20,20,3);
roundShope.filters = [dropShawFilter];
roundShope.blendMode = BlendMode.MULTIPLY;
addChild(roundShope);


 

發佈了37 篇原創文章 · 獲贊 5 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章