大家来理解Flash使用AS来画线的教程

教程

  注:每种代码后面都有演示效果,你可以直接测试,在文章最后给大家提供了所有的源文件

  给大家简单介绍一下Flash中使用AS来画线,从下面这个函数开始吧!

_root.createEmptyMovieClip("terrain", 1);

  这个函数的功能是创建一个空的MC,名字为terrain。

  然后开始画线:

_root.terrain.lineStyle(10, 0xff0000, 100);

  10代表线的粗细;0xff0000代表线颜色;100代表线的alpha为100。

  你可以查看一下手册lineStyle函数的使用。

  下面开始具体给出画线的代码:

  画红色矩形:

createEmptyMovieClip("terrain", 1);
terrain.lineStyle(10, 0xff00ff, 100);
terrain.moveTo(100, 100);
terrain.lineTo(300, 100);
terrain.lineTo(300, 300);
terrain.lineTo(100, 300);
terrain.lineTo(100, 100);

  效果:

  鼠标画线:

createEmptyMovieClip("terrain", 1);
terrain.lineStyle(10, 0xff00ff, 100);
onEnterFrame = function () {
    terrain.lineTo(_xmouse, _ymouse);
};

  效果:

  改变帧频为50fps

  只有按一下鼠标才能画:

createEmptyMovieClip("terrain", 1);
terrain.lineStyle(10, 0xff00ff, 100);
imdrawing = false;
onMouseDown = function () {
    if (imdrawing == false) {
        terrain.moveTo(_xmouse, _ymouse);
        imdrawing = true;
    }
    if (imdrawing == true) {
        onEnterFrame = function () {
            terrain.lineTo(_xmouse, _ymouse);
        };
    }
};
onMouseUp = function () {
    onEnterFrame = function () {
        imdrawing = false;
    };
};

  效果:

  添加一些其它的画线效果:

import flash.filters.BevelFilter;
var distance:Number = 2;
var angleInDegrees:Number = 45;
var highlightColor:Number = 0xff00ff;
var highlightAlpha:Number = 1;
var shadowColor:Number = 0xbb00bb;
var shadowAlpha:Number = 1;
var blurX:Number = 8;
var blurY:Number = 8;
var strength:Number = 10;
var quality:Number = 3;
var type:String = "inner";
var knockout:Boolean = false;
var my_bevel_filter:BevelFilter = new BevelFilter(distance, angleInDegrees, highlightColor, highlightAlpha, shadowColor, shadowAlpha, blurX, blurY, strength, quality, type, knockout);
createEmptyMovieClip("terrain", 1);
terrain.lineStyle(20, 0xdd00dd, 100);
terrain.filters = new Array(my_bevel_filter);
imdrawing = false;
onMouseDown = function () {
    if (imdrawing == false) {
        terrain.moveTo(_xmouse, _ymouse);
        imdrawing = true;
    }
    if (imdrawing == true) {
        onEnterFrame = function () {
            terrain.lineTo(_xmouse, _ymouse);
        };
    }
};
onMouseUp = function () {
    onEnterFrame = function () {
        imdrawing = false;
    };
};

  效果:

  模糊效果画线:

import flash.filters.BlurFilter;
var blurX:Number = 30;
var blurY:Number = 30;
var quality:Number = 3;
var my_blur_filter:BlurFilter = new BlurFilter(blurX, blurY, quality);
createEmptyMovieClip("terrain", 1);
terrain.lineStyle(20, 0xdd00dd, 100);
terrain.filters = new Array(my_blur_filter);
imdrawing = false;
onMouseDown = function () {
    if (imdrawing == false) {
        terrain.moveTo(_xmouse, _ymouse);
        imdrawing = true;
    }
    if (imdrawing == true) {
        onEnterFrame = function () {
            terrain.lineTo(_xmouse, _ymouse);
        };
    }
};
onMouseUp = function () {
    onEnterFrame = function () {
        imdrawing = false;
    };
};

  效果:

  发光效果画线代码:

import flash.filters.GlowFilter;
var color:Number = 0x33CCFF;
var alpha:Number = .8;
var blurX:Number = 35;
var blurY:Number = 35;
var strength:Number = 2;
var quality:Number = 3;
var inner:Boolean = false;
var knockout:Boolean = false;
var my_glow_filter:GlowFilter = new GlowFilter(color, alpha, blurX, blurY, strength, quality, inner, knockout);
createEmptyMovieClip("terrain", 1);
terrain.lineStyle(20, 0xdd00dd, 100);
terrain.filters = new Array(my_glow_filter);
imdrawing = false;
onMouseDown = function () {
    if (imdrawing == false) {
        terrain.moveTo(_xmouse, _ymouse);
        imdrawing = true;
    }
    if (imdrawing == true) {
        onEnterFrame = function () {
            terrain.lineTo(_xmouse, _ymouse);
        };
    }
};
onMouseUp = function () {
    onEnterFrame = function () {
        imdrawing = false;
    };
};

  效果:

  画阴影线的代码:

import flash.filters.DropShadowFilter;
var distance:Number = 20;
var angleInDegrees:Number = 45;
var color:Number = 0x000000;
var alpha:Number = .8;
var blurX:Number = 16;
var blurY:Number = 16;
var strength:Number = 1;
var quality:Number = 3;
var inner:Boolean = false;
var knockout:Boolean = false;
var hideObject:Boolean = false;
var my_shadow_filter:DropShadowFilter = new DropShadowFilter(distance, angleInDegrees, color, alpha, blurX, blurY, strength, quality, inner, knockout, hideObject);
createEmptyMovieClip("terrain", 1);
terrain.lineStyle(20, 0xdd00dd, 100);
terrain.filters = new Array(my_shadow_filter);
imdrawing = false;
onMouseDown = function () {
    if (imdrawing == false) {
        terrain.moveTo(_xmouse, _ymouse);
        imdrawing = true;
    }
    if (imdrawing == true) {
        onEnterFrame = function () {
            terrain.lineTo(_xmouse, _ymouse);
        };
    }
};
onMouseUp = function () {
    onEnterFrame = function () {
        imdrawing = false;
    };
};

  效果:

  上面所有效果都混合在一起:

// bevel filter
import flash.filters.BevelFilter;
var distance:Number = 5;
var angleInDegrees:Number = 45;
var highlightColor:Number = 0xFFFF00;
var highlightAlpha:Number = .8;
var shadowColor:Number = 0x0000FF;
var shadowAlpha:Number = .8;
var blurX:Number = 5;
var blurY:Number = 5;
var strength:Number = 5;
var quality:Number = 3;
var type:String = "inner";
var knockout:Boolean = false;
var my_bevel_filter:BevelFilter = new BevelFilter(distance, angleInDegrees, highlightColor, highlightAlpha, shadowColor, shadowAlpha, blurX, blurY, strength, quality, type, knockout);
// blur filter
import flash.filters.BlurFilter;
var blurX:Number = 30;
var blurY:Number = 30;
var quality:Number = 3;
var my_blur_filter:BlurFilter = new BlurFilter(blurX, blurY, quality);
// shadow
import flash.filters.DropShadowFilter;
var distance:Number = 20;
var angleInDegrees:Number = 45;
var color:Number = 0x000000;
var alpha:Number = .8;
var blurX:Number = 16;
var blurY:Number = 16;
var strength:Number = 1;
var quality:Number = 3;
var inner:Boolean = false;
var knockout:Boolean = false;
var hideObject:Boolean = false;
var my_shadow_filter:DropShadowFilter = new DropShadowFilter(distance, angleInDegrees, color, alpha, blurX, blurY, strength, quality, inner, knockout, hideObject);
// glow
import flash.filters.GlowFilter;
var color:Number = 0x33CCFF;
var alpha:Number = .8;
var blurX:Number = 35;
var blurY:Number = 35;
var strength:Number = 2;
var quality:Number = 3;
var inner:Boolean = false;
var knockout:Boolean = false;
var my_glow_filter:GlowFilter = new GlowFilter(color, alpha, blurX, blurY, strength, quality, inner, knockout);
_root.createEmptyMovieClip("terrain", 1);
_root.terrain.lineStyle(10, 0xff00ff, 100);createEmptyMovieClip("terrain", 1);
terrain.lineStyle(20, 0xdd00dd, 100);
terrain.filters = new Array(my_shadow_filter,my_glow_filter,my_blur_filter,my_bevel_filter);
imdrawing = false;
onMouseDown = function () {
    if (imdrawing == false) {
        terrain.moveTo(_xmouse, _ymouse);
        imdrawing = true;
    }
    if (imdrawing == true) {
        onEnterFrame = function () {
            terrain.lineTo(_xmouse, _ymouse);
        };
    }
};
onMouseUp = function () {
    onEnterFrame = function () {
        imdrawing = false;
    };
};

  效果:

点击这里下载源文件

时间: 2024-10-26 06:05:56

大家来理解Flash使用AS来画线的教程的相关文章

flash MX中怎么画正多边形

一.用Transform 面板 我们以正五边形为例 1.新建一文件,在场景任画一条直线,按 F8转换为影片,把中心定为左上角 ,如图1所示 图1:中心定在左上角 2.选中直线,按ctrl+T调出Transform 面板,并在Rotate框中输入72(360/5),角度的计算方法是360度除以边数.如图2 图2:Transform面板 3.按面板中的copy and apply transform按钮4次,就可复制出环形排列的四条直线 4.按CTRL+A选中所有的直线, 按ctrl+B打散,依次把

[Flash基础理论课03]制作简易涂鸦板[画线指令]

返回"Flash基础理论课 - 目录" 思路:1.设一个pressed变量,为布尔型,初始为false; 2.鼠标移动就画线; 3.当pressed=true 时,鼠标移动时,可以画线; 4.当pressed=false时,鼠标移动时,不能画线; 5.最后再加入一些按钮来调整线条粗细和清空画板. 步骤一: 放入三个按扭,实例名分别为: "clear_btn": 清除线条; "str_btn": 加粗线条; "thin_btn"

Flash绘画技巧:画脸的方法和肤色配法

技巧 1.色块式画法.  虽然说最易入手,但要用两三种颜色分出立体感和质感则也是要下一段苦功? 首先画线槁圖(这线槁是直接在painter打的稿) 2.先打上一层亮面基本色   (理论上是必须先在上面作一下色块分界线的但本人太懶了) 3.确定光源方向后,再上暗面 4.眼晴再上更深的顏色,亮点记得留下就好. 5.头发就用眼晴的顏色上就行了. 6. 一般畫法 类似水彩上法,顏色由浅到深加上去. 线稿用第一幅的. 先打上一層亮面基本色 7.做一下渐层,这个动作很重要,但写起来太累了,所以直接看图吧.

Flash画线实现蜘蛛丝的动态更新

动态|蜘蛛 以前个人网上的一个点辍,用画线实现的,希望给有想象力的同志一点启发,抛砖先效果如下: 下面讲下实现的方法, (1)先建三个MC,如下: 一个是spider_mc,画一个蜘蛛,像样点就算了,呵呵!一个是net_mc一个网,当背景用的,没有用!最后一个是空的MC,叫line_mc,用来画线的. (2)回到场景,建三个层如下: 最底一个叫NET,用来放背景net 的,把net拉进去;中间一个层叫line,用来放line_mc的,把line_mc拉进来,并给这个剪辑命名line_mc;最后一

利用FlashMX的AS画线集萃

使用方法:把代码拷到帧中就可看到效果 效果:可按住鼠标任意画线,可作简单的涂鸭工具 代码: createEmptyMovieClip("xian",1); with (xian) { _root.onMouseMove = function() { if (draw) { _root.lineStyle(0, 0x000000, 100); _root.lineTo(_root._xmouse, _root._ymouse); } }; _root.onMouseDown = func

flash制作一个简单的音乐动画教程

  很多同学都对Flash感兴趣 ,下面小编就教教大家如何用flash做一个简单的动画. 通过这个设计充分地将FLASH动画的现况分析出来了,本设计是根据选定音乐.人物的设定.剧本的创作.场景的布置等.首先就是选歌,一部好的MTV就得有一首贯穿全场的好歌,其次就是根据歌意确定主题和场景的布置,最后围绕剧情制造出MTV. 工具/原料 Flash PS 一首自己感兴趣的歌 素材照片 方法/步骤 1.2 Flash软件的特点 FLASH的全称是Macromedia flash,后来又被adobe收购了

图片-画线那句话是什么意思

问题描述 画线那句话是什么意思 解决方案 if(...){ .... }else{ ...... } 用这种形式编写代码 解决方案二: 就是你需要一个变量记录上一个产生的随机数 然后比较它们之间哪个大,好比如下的输出 7 10 大于 4 小于 9 大于 9 等于 13 大于 10 小于 ... 解决方案三: 25个数放入数组或列表,循环之,然后判断当前的数和它后面的数的大小关系,个人理解 解决方案四: 判断先生成的值于后面紧接着生成的值的大小关系 然后进行分类 分成三类 大于后面的 小于后面的

画线实现蜘蛛丝的动态更新

动态 以前个人网上的一个点辍,用画线实现的,希望给有想象力的同志一点启发,抛砖先 (1)先建三个MC,如下: screen.width-333)this.width=screen.width-333" border=0> 一个是spider_mc,画一个蜘蛛,像样点就算了,呵呵!一个是net_mc一个网,当背景用的,没有用!最后一个是空的MC,叫line_mc,用来画线的. (2)回到场景,建三个层如下: screen.width-333)this.width=screen.width-3

Flash CS3墨水瓶工具创建轮廓线应用教程

  本例为Flash CS3仿真艺术设计系列教程,我们将学习Flash cs3中渲染之轮廓的应用,如果你对线条和手绘操作不是很精通,这个技巧也许较为适合你. 渲染4:轮廓 卡通渲染方法的变化是更好地适应于简单的和复杂的形状.如果你对线条和手绘操作不是很精通,这个技巧也许较为适合你.你将使用墨水瓶工具为你的填充创建一个轮廓线.然后你可以重新调整线条并用稍深的颜色填充它. 1. 开始使用墨水瓶工具(I)并选择一个与你的设计中任何一处都不相同的颜色.设置线条颜色粗细在3到4左右.在填充内点击,用你选择