Flash AS3制作鼠標(biāo)跟隨噴槍涂鴉效果(2)_Flash教程
推薦:Flash as入門:文本與字符串本例繼續(xù)講解AS的基礎(chǔ)知識(shí),今天講解的是AS入門第六課文本與字符。 文本與字符串 在制作flash動(dòng)畫時(shí),常常會(huì)用到文本和字符串,首先來看看文本. 一 創(chuàng)建文本框 在創(chuàng)作環(huán)境中創(chuàng)建文本
11.打開動(dòng)作面板輸入下列代碼:
/*我們需要?jiǎng)?chuàng)建一個(gè)BitmapData對(duì)象以便以一個(gè)像素圖形對(duì)象工作。我們希望wallCanvas一開始時(shí)是透明的,這就是為什么我們用0x00ffffff值作參數(shù)。*/
var wallCanvas:BitmapData = new BitmapData(stage.stageWidth,stage.stageHeight - 100,true, 0x00ffffff);
//創(chuàng)建一個(gè)歸類于 BitmapData對(duì)象的位圖對(duì)象。
var bitmap:Bitmap = new Bitmap(wallCanvas);
//在舞臺(tái)上添加一個(gè)位圖
addChild (bitmap);
//監(jiān)聽墻上的鼠標(biāo)點(diǎn)下事件
drawingArea.addEventListener (MouseEvent.MOUSE_DOWN, mouseDownHandler);
//監(jiān)聽整個(gè)舞臺(tái)上的鼠標(biāo)放開事件
stage.addEventListener (MouseEvent.MOUSE_UP, mouseUpHandler);
//噴槍的顏色
var color:uint;
//噴槍的最大半徑
var maxRadius:Number;
//噴槍的密度
var density:Number;
//當(dāng)鼠標(biāo)在墻上點(diǎn)下時(shí)調(diào)用
function mouseDownHandler (event:MouseEvent):void {
//增加EVENT_FRAME 這樣我們可以在每一幀繪制
addEventListener (Event.ENTER_FRAME, onEnterFrame);
}
//當(dāng)鼠標(biāo)放開時(shí)調(diào)用
function mouseUpHandler (event:MouseEvent):void {
//如果鼠標(biāo)放開時(shí)(沒有繪制),我們就不需要EVENT_FRAME了
removeEventListener (Event.ENTER_FRAME, onEnterFrame);
}
//這個(gè)函數(shù)負(fù)責(zé)整個(gè)繪制過程
function onEnterFrame (event:Event):void {
//從sizeSlider中獲得尺寸
maxRadius = sizeSlider.value;
/*從myColorPicker.中獲得顏色,當(dāng)我們繪制時(shí)(我們循環(huán)繪制像素)我們使用0xff000000創(chuàng)建像素的顏色。*/
color = myColorPicker.selectedColor 0xff000000;
//從densitySlider中獲得密度
density = densitySlider.value;
/*這個(gè)密度定義了我們循環(huán)了多少次,換言之,在每一幀繪制了多少像素*/
for (var i:int = 0; i < density; i ) {
//計(jì)算一個(gè)隨機(jī)角度
var angle:Number = Math.random() * Math.PI * 2;
//計(jì)算一個(gè)被畫的像素的隨機(jī)半徑
var radius:Number = Math.random() * maxRadius;
//計(jì)算x和y的位置
var xPos:Number = mouseX Math.cos(angle) * radius;
var yPos:Number = mouseY Math.sin(angle) * radius;
//畫像素
wallCanvas.setPixel32 (xPos, yPos, color);
}
}
你已經(jīng)完成了,如果有什么問題,請(qǐng)?jiān)L問論壇�?鞓返囊惶�!
下面給出本例的代碼,朋友們可以研究下var wallCanvas:BitmapData = new BitmapData(stage.stageWidth,stage.stageHeight - 100,true, 0x00ffffff);
var bitmap:Bitmap = new Bitmap(wallCanvas);
addChild (bitmap);
drawingArea.addEventListener (MouseEvent.MOUSE_DOWN, mouseDownHandler);
stage.addEventListener (MouseEvent.MOUSE_UP, mouseUpHandler);
var color:uint;
var maxRadius:Number;
var density:Number;
function mouseDownHandler (event:MouseEvent):void {
addEventListener (Event.ENTER_FRAME, onEnterFrame);
}
function mouseUpHandler (event:MouseEvent):void {
removeEventListener (Event.ENTER_FRAME, onEnterFrame);
}
function onEnterFrame (event:Event):void {
maxRadius = sizeSlider.value;
color = myColorPicker.selectedColor 0xff000000;
density = densitySlider.value;
for (var i:int = 0; i < density; i ) {
var angle:Number = Math.random() * Math.PI * 2;
var radius:Number = Math.random() * maxRadius;
var xPos:Number = mouseX Math.cos(angle) * radius;
var yPos:Number = mouseY Math.sin(angle) * radius;
wallCanvas.setPixel32 (xPos, yPos, color);
}
}
分享:Flash教程:用AS3代碼制作躲避碰撞的盒子簡(jiǎn)介:本例介紹運(yùn)用Flash的AS3代碼制作躲避碰撞的盒子效果,譯者詳細(xì)解釋了代碼的運(yùn)用,喜歡本效果的朋友可以到論壇提交作業(yè)~~ 效果演示:(請(qǐng)用鼠標(biāo)點(diǎn)擊小球觀看效果) 在這個(gè)Actions
Flash教程Rss訂閱網(wǎng)站制作教程搜索
Flash教程推薦
- 平滑播放FLV視頻文件
- Flash中如何調(diào)用exe可執(zhí)行文件?
- Flash MX2004入門與進(jìn)階實(shí)例——元件和實(shí)例(1)
- 問題解決:如何讓網(wǎng)頁中的Flash影片全屏?
- Flash鼠繪藍(lán)色卡通人物
- Flash片頭加載loading的基礎(chǔ)討論
- Flash AS教程:用動(dòng)態(tài)遮罩實(shí)現(xiàn)液化效果
- Flash MX2004入門與進(jìn)階實(shí)例——?jiǎng)幼髂_本進(jìn)階(14)
- Flash實(shí)例教程:多張圖片循環(huán)滾動(dòng)
- Flash實(shí)例教程:方塊動(dòng)畫特效制作
猜你也喜歡看這些
- Flash 8 中文版從入門到精通隨書光盤
- 中科院新科海Flash培訓(xùn)視頻
- 臺(tái)灣呂聰賢Flash MX視頻教程
- Flash CS4中文版入門與提高
- Flash CS4動(dòng)畫設(shè)計(jì)與制作300例
- Flash8全實(shí)例學(xué)習(xí)手冊(cè)原書配套光盤
- 新東方劍橋商務(wù)英語BEC flash教程 初+中+高 (現(xiàn)已穩(wěn)定供源)
- Flash CS3動(dòng)畫設(shè)計(jì)入門提高與技巧(光盤).
- 《Flash CS3 Professional動(dòng)畫制作技能進(jìn)化手冊(cè)》--樣章、樣例、教學(xué)視頻
- 呂聰賢flash視頻教程下載
- 相關(guān)鏈接:
- 教程說明:
Flash教程-Flash AS3制作鼠標(biāo)跟隨噴槍涂鴉效果(2)
。