FLASH制作立方体变形控制
- 格式:ppt
- 大小:209.00 KB
- 文档页数:13
制作方法:1、事先用PHOTOSHOP处理好6张200*199的图片。
2、打开FLASH,新建文挡,550*400,桢频60。
先导入事先准备好的六张图片,点“文件”-"导入"-“导入到库”。
3、图片导入后,打开库面板。
4、然后在导入的图片上击鼠标右键。
选择“链接”。
5、在弹出的对话框中,输入"image0"。
并且勾选如下图所示的两个复选框。
照此方法,对图片依次进行设置。
即"image0"、"image1"、"image2"、"image3"、"image4"、"image5"。
6、在场景第一层中绘制一个背景。
这步不是必须的,呵呵...可以省略。
当然啦,你也可以加一张背景图片。
7、新建第二层(AS层),添加代码。
在第一桢输入如下代码:function createRectangle(scope, w, h, color, is_fill){var l = scope.getNextHighestDepth();var _mc = scope.createEmptyMovieClip("mc_" + l, l);with (_mc){lineStyle(0, color, 100);if (is_fill){beginFill(color, 100);} // end iflineTo(0, h);lineTo(w, h);lineTo(w, 0);lineTo(0, 0);endFill();} // End of withreturn (_mc);} // End of the functionstop ();var loader_width = 150;var loader_height = 4;var loading_color = 4539717;var my_loader_mc1 = createRectangle(this, loader_width, loader_height, loading_color, true);var my_loader_mc2 = createRectangle(this, loader_width, loader_height, loading_color, false);my_loader_mc1._x = (Stage.width - loader_width) / 2;my_loader_mc1._y = (Stage.height - loader_height) / 2;my_loader_mc2._x = my_loader_mc1._x;my_loader_mc2._y = my_loader_mc1._y;this.onEnterFrame = function (){my_loader_mc1._width = _root.getBytesLoaded() /_root.getBytesTotal() * loader_width;if (_root.getBytesLoaded() == _root.getBytesTotal()){my_loader_mc1.removeMovieClip();my_loader_mc2.removeMovieClip();delete my_loader_mc1;delete my_loader_mc2;delete this.onEnterFrame;play ();} // end if};在第二桢输入如下代码:function my_getImages(){for (var _loc1 = 0; _loc1 < 6; ++_loc1){my_blank_mc.createEmptyMovieClip("image" + _loc1, _loc1);my_blank_mc["image" + _loc1].createEmptyMovieClip("my_blmc", _loc1);my_blank_mc["image" +_loc1].my_blmc.attachBitmap(flash.display.BitmapData.loadBitmap("imag e" + _loc1), 1, false, true);} // end of for} // End of the functionfunction pointsTransform(points, _zxb) {var _loc17 = new Array();var _loc10 = Math.sin(_zxb.x);var _loc12 = Math.cos(_zxb.x);var _loc8 = Math.sin(_zxb.y);var _loc11 = Math.cos(_zxb.y);var _loc7 = Math.sin(_zxb.z);var _loc9 = Math.cos(_zxb.z);var _loc16;var _loc15;var _loc3;var _loc5;var _loc4;var _loc6;var _loc18;var _loc14;var _loc13;var _loc1 = points.length;while (_loc1--){_loc16 = points[_loc1].x;_loc15 = points[_loc1].y;_loc3 = points[_loc1].z;_loc5 = _loc12 * _loc15 - _loc10 * _loc3; _loc4 = _loc10 * _loc15 + _loc12 * _loc3; _loc18 = _loc11 * _loc4 - _loc8 * _loc16; _loc6 = _loc8 * _loc4 + _loc11 * _loc16; _loc14 = _loc9 * _loc6 - _loc7 * _loc5; _loc13 = _loc7 * _loc6 + _loc9 * _loc5; _loc17[_loc1] = {x: _loc14, y: _loc13}; } // end whilereturn (_loc17);} // End of the functionfunction my_GetTransform(mc, a, b, c){mc._visible = my_TransifVisi(a, b, c);if (!mc._visible){return;} // end ifvar _loc1 = mc.transform.matrix;_loc1.tx = b.x;_loc1.ty = b.y;_loc1.a = (a.x - b.x) / mc.my_blmc._width;_loc1.b = (a.y - b.y) / mc.my_blmc._width;_loc1.c = (c.x - b.x) / mc.my_blmc._height; _loc1.d = (c.y - b.y) / mc.my_blmc._height;mc.transform.matrix = _loc1;} // End of the functionfunction my_TransifVisi(a, b, c){var _loc5 = b.x - a.x;if (!_loc5){return (a.y > b.y == c.x > a.x);} // end ifvar _loc4 = c.x - a.x;if (!_loc4){return (a.y > c.y == b.x < a.x);} // end ifreturn ((b.y - a.y) / _loc5 < (c.y - a.y) / _loc4 != (a.x < b.x == a.x > c.x));} // End of the functionStage.scaleMode = "noScale";var my_mc = new ContextMenu();my_mc.hideBuiltInItems();_root.menu = my_mc;_root.createEmptyMovieClip("my_blank_mc", 1);var _zxb = {x: 0, y: 0, z: 0};var my_Box_daxiaos = [{x: -50, y: -50, z: -50}, {x: 50, y: 50, z: -50}, {x: -50, y: 50, z: -50}, {x: -50, y: -50, z: 50}, {x: 50, y: -50, z: 50}, {x: 50, y: 50, z: 50}];my_blank_mc._x = 400;my_blank_mc._y = 280;my_blank_mc.onEnterFrame = function (){_zxb.x = _zxb.x - this._ymouse / 12000;_zxb.y = _zxb.y + this._xmouse / 12000;var _loc2 = pointsTransform(my_Box_daxiaos, _zxb);my_GetTransform(this.image0, _loc2[2], _loc2[0], _loc2[3]);my_GetTransform(this.image1, _loc2[5], _loc2[1], _loc2[2]);my_GetTransform(this.image2, _loc2[0], _loc2[2], _loc2[1]);my_GetTransform(this.image3, _loc2[4], _loc2[3], _loc2[0]);my_GetTransform(this.image4, _loc2[3], _loc2[4], _loc2[5]);my_GetTransform(this.image5, _loc2[1], _loc2[5], _loc2[4]);};my_getImages();stop ();8、测试,存盘。
Flash CS4 精确变形对象
使用【任意变形工具】可以方便快捷地操作对象,但是却不能控制其精确度,而利用【变形】面板可以通过设置各项参数,精确地对其进行缩放对象、旋转对象、倾斜、翻转对象的操作。
1.精确缩放对象
选中舞台中的图形对象后,执行【窗口】|【变形】命令(快捷键),打开【变形】面板。
在该面板中,可以沿水平方向、垂直方向缩放图形对象。
比如单击水平方向的文本框,在其中输入50,即可以图形原宽度尺寸的50%缩小。
设置
要想成比例缩放图形对象,可以在设置之前单击【约束】按钮。
然后在任一个文本框中输入数值,即可得到成比例的缩放效果。
单击
设置
当设置图形的缩放比例后,要想返回原尺寸,只要单击
【重置】按钮即可。
2.精确旋转与倾斜对象
在【变形】面板中,当启用【旋转】单选框时,可以在文本框中输入数值,进行306度的旋转;当启用【倾斜】单选框时,则可以进行水平或者垂直方向的360度的倾斜变形。
启用并
设置
启用并
设置
3.重制选区和变形
当启用【旋转】单选框进行图形旋转时,设置旋转角度后,还可以通过连续单击【重制选区和变形】按钮,得到复制的旋转图形。
设置
连续单
击。
利用FlashMX制作正方体的截面演示课件作者:张子龙来源:《中国教育技术装备》2008年第13期用一个平面去截取一个正方体,截面可能是几边形?大多数学生对于这个问题的回答是三角形和四边形。
对于截面是五边形、六边形的情况,如果不借助几何模型,大部分学生是很难想象的。
为了提高教学效率,笔者利用Flash MX制作成演示课件,用来演示截面的各种情况。
下面以平面截取正方体形成六边形为例,介绍利用Flash MX制作演示课件的全过程。
新建一个Flash文档,使用浅蓝色背景。
制作元件制作几个图形元件反复执行“插入→新建元件”命令,分别制作如图1、图2、图3、图4所示图形元件。
注意:制成的“正方体左上”和“正方体右下”两元件可正好组合成一个正方体,如图5所示;斜平面斜度与正方体内的六边形一致,平面内的填充色为黄色。
制作“截取六边形”影片剪辑元件1)执行“插入→新建元件”命令,制作“影片剪辑”元件。
在该元件编辑窗口,插入4个新图层,并分别命名为“左上”“右下”“斜平面”“涂抹”“按钮”等图层。
2)单击“左上”图层的第1帧,将“库”中的“正方体左上”元件拖放到编辑窗口的中央位置;在第14帧、20帧插入关键帧,选中第20帧的“正方体左上”将其向左水平移动一段距离(如图6所示);右击时间轴的第14~20帧“创建补间动画”,锁定该图层。
3)单击“右下”图层的第1帧,将“库”中的“正方体右下” 元件拖放到编辑窗口的中央位置,并使“正方体左上”和“正方体右下”恰好组成一个正方体(如图5所示);在该图层的第14帧、20帧插入关键帧,选中第20帧的“正方体右下”,将其向右水平移动一段距离(如图6所示);右击时间轴的第14~20帧“创建补间动画”,锁定该图层。
4)单击“斜平面”图层的第1帧,将“库”中的“斜平面”用鼠标拖至编辑窗口正方体的右上方(如图7所示);在该图层的第10帧插入关键帧,选中该帧的“斜平面”将其移动,使“斜平面”的底边与“正方体”顶面六边形顶边相齐;在第14帧插入关键帧,然后将“斜平面”移入正方体内;在第20帧插入关键帧,将“斜平面”移到分开的正方体的上方;分别将第1~10帧、第10~14帧、第14~20帧创建补间动画,锁定该图层;用鼠标箭头将“斜平面移动层”拖至“左上移动层”的下方(此时也在“右下移动层”的上方)。
建立“旋转立方体”
1、新建一个FLASH 3.0文档。
2、导入六幅图片到库。
3、新建一个影片剪辑“立方体”。
将库中的六幅图片拖入,分别转换为相应的影片剪辑“a1”,“a2”,“a3”,“a4”,“a5”,“a6”。
选择所有实例,执行“修改——时间轴——分散到图层”,六个实例分别分散到六个图层“a1——a6”,删除“图层1”。
调整图层从上到到下的顺序,分别为“a1”“a3”“a4”“a5”“a6”“a2”。
设置a1的3D坐标为:0,0,-100,alpha值为80%;
设置a2的3D坐标为:0,0,100,alpha值为80%;
设置a3的3D坐标为:-100,0,0,alpha值为80%,设置“变形面板”中的3d坐标系:0,90,0;
设置a4的3D坐标为:100,0,0,alpha值为80%,设置“变形面板”中的3d坐标系:0,- 90,0;
设置a5的3D坐标为:0,-100,0,alpha值为80%,设置“变形面板”中的3d坐标系:90,0,0;
设置a6的3D坐标为:0,100,0,alpha值为80%,设置“变形面板”中的3d坐标系:90,0,0。
4、返回场景,将影片剪辑“立方体”拖入。
建立“补间动画”,修改为“3D补间”,在193帧处插入关键帧(全部)。
5、在“动画编辑器”中编辑。
1)在“旋转y”第50帧处插入关键帧,设置旋转y轴“360”;在95帧处插入关键帧,设置旋转y轴“0”。
2)在“旋转x”第95帧处插入关键帧,设置旋转x轴“0”;在145帧处插入关键帧,设置旋转x轴“360”。
6、新建背景图层,拖入“bg.jpg”,调整背景大小和位置,让其覆盖整个舞台。
flash简单制作旋转的立方体flash教程flash实例立方体
1、准备6张200*200 JPEG格式图片,作为立方体的六个侧面图片;一张750*560 JPEG格式图片,作为动画的底图,一首MP3音乐作为背景音乐。
2、打开FLASH 8.0或者FLASH CS3软件,设置动画尺寸为750*560,把准备好的6张200*200图片和1张750*560图片以及MP3音乐导入到库里。
注意:FLASH 8.0的软件新建文档画面如下:(点击-创建新项目-FLASH文档)
FLASH CS3新建文档画面如下:(记住:一定要点击新建-FLASH文件(ActionSc ript 2.0),因为3.0不支持)
3、把库里的6张200*200图片重新命名,依次命名为:image0 image1 image2 i mage3 image4 image5 ,如下所示:
4、鼠标右键放在库里重新命名为image0的图片上,点击鼠标右键的“属性”,在出现的待选项目里,把鼠标放在衔接项目上,点击鼠标左键,出现如下提示:
在“为ActionScript”前面的框里点击,出现绿色的勾,如图所示。
5、新建一个名字为“语句”的影片剪辑,在第一帧添加动作代码如下(复制-粘帖就可以啦):
function createImages()
{。
实验四制作立体几何图形元件实验要求:◆进一步熟悉利用绘图工具绘制矢量图的方法◆图形元件的创建方法◆绘图辅助工具的使用方法◆颜料桶工具的使用方法◆对齐面板的使用方法◆混色器面板的使用方法制作步骤1 .创建影片文档(1 )新建影片文档。
选择【文件】| 【新建】命令或按快捷键Ctrl+N ,新建一个Flash 文档。
(2 )设置文档属性。
选择【窗口】| 【属性】命令,或按快捷键Ctrl+F3 打开【属性】面板,设置文档属性。
在【文档属性】对话框中,舞台大小设置为500 × 350 像素,【背景色】选取为深蓝色,其它参数保持不变,单击【确定】按钮,完成舞台属性的设置,如图1-2-2 所示。
图1-2-2 设置文档属性2 .绘制“两个相交面”图形元件元件是Flash 动画中的基本构成要素之一,它是可以反复使用的各种符号,包括图形、动画和声音等,多次使用不会明显增加动画文件的大小的特征。
按功能和类型的不同,元件可分为:图形元件、按钮元件和电影剪辑元件。
Flash 之所以把各种动画元素做成元件,就是为了使文件的体积更小。
图形元件是Flash 最基本的一种元件类型。
在制作Flash 课件时,通常都是将一些静止的图形制作成图形元件,这样也便于重复使用。
元件的创建有以下几种方法:a 将场景上的对象转换成元件。
b 新建一个空白元件,然后在元件编辑状态下创建元件内容。
c 将动画转换成元件。
(1 )创建“两个相交面”图形元件。
选择【插入】| 【新建元件】命令,弹出【新建元件】对话框,在【新建元件】对话框中,输入元件的【名称】为“背景”,选择【行为】为【图形】,如图1-2-3 所示。
图1-2-3 创建新元件对话框单击【确定】按钮,在【场景1 】的名称右边出现一个“ 两个相交的面”图形元件名称,动画的制作环境由【场景 1 】转换到“两个相交面”图形元件编辑场景状态,如图1-2-4 所示。
图1-2-4 “两个相交的面”图形元件编辑场景(2 )打开视图网格。
这是一个来自Flashzone的例子,幸运鸟只作了简单的加工。
在这个示例中,同样用到了一些非常简单的Actions,而效果却很不错,所以通过它来进一步认识Actions的用法是再好不过了。
新建一个文件,设置背景色为黑色。
按Ctrl-F8新建一个图形类图符bar。
选矩形工具用蓝色的填充色按Shift键拉出一个不带边框的正方形。
选中这个正方形,按Ctrl-C复制,再按Ctrl-V粘贴,把新生成的正方形拖到原来正方形的下面,再按Ctrl-V产生一个正方形,再拖到前面两个正方形下面,如此往复,使画面中一共有八个排成“1”字形的正方形。
同时选中这八个正方形,按Ctrl-K设置对齐方式,使它们在竖直方向上等间距,水平方向上居中对齐(或左或右对齐,因为它们同样大小),见下图。
注意调整到如下图所示的间距,因为这八个方块的间距取决于两端的两个方块的位置,所以如果间距不合适,只需要改动首尾两个方块的位置即可。
另外一点需要注意的是,因为这些方块是形体,所以不要把它们重叠在一起,那样它们会融合成为新的形体。
所有工作做好后,把这八个方形移动到下图所示位置上,使十字定位符位于它们的最下端,因为我们一会儿要相对这一点进行压缩处理。
下面我们来做一个可以转动的方块层。
按Ctrl-F8新建一个电影片断类图符moving bar。
按Ctrl-L打开图库窗口,并把刚刚做好的图符bar拖到编辑区中。
在第20帧按F6插入关键帧,并对这个图符实例进行压缩处理,如下图所示,把它压缩直到非常扁为止,为了达到更好的效果,我们需要用放大镜工具对画面进行放大,然后再进一步压扁这个实例,但要注意不要使它发生翻转,也就是说,保证上下两条端线的相对位置关系不变。
在选中它的状态下按Ctrl-C复制备用。
-->-->双击这个实例,把它的颜色效果设置为下图所示。
然后双击第1帧,设置帧属性为运动渐变。
还在这个图符的编辑状态下,新建一个层。
在第1帧按Ctrl-V粘贴刚才复制的压扁的方块。