拖动与碰撞的应用,Flash学习

2024-04-29

拖动与碰撞的应用,Flash学习(共8篇)

篇1:拖动与碰撞的应用,Flash学习

点击这里下载源文件

picx_array = new Array; //图片元件的X坐标

picy_array = new Array(); //图片元件的Y坐标

xx_array = new Array(30, 135, 30, 135, 30, 135); //图片被放入答案框的位置 X坐标

yy_array = new Array(110, 110, 170, 170, 230, 230); // 图片被放入答案框的位置 Y坐标

ansxx_array=new Array(30,265,370,265,135,30); //显示答案时的图片位置x坐标

ansyy_array=new Array(110,110,110,170,110,170);

m1_array = new Array(0, 0, 0, 0, 0, 0); //第一个答案框放入图片位置标志

m2_array = new Array(0, 0, 0, 0, 0, 0); //第二个答案框放入图片位置标志

answer_array = new Array(0, 0, 0, 0, 0, 0); //答案记录数组

key_array = new Array(1, 2, 2, 2, 1, 1); //正确答案,1表示图片在第一个答案框

pic_num = 6; //图片总数

answer._visible = false; //结果显示板隐藏

answer.swapDepths(30); //交换到深度30

for (var i = 1; i

picx_array[i-1] = eval(“pic”+i)._x; //将图片的初始位置存入数组

picy_array[i-1] = eval(“pic”+i)._y;

eval(“pic”+i).swapDepths(i); //并置入深度

eval(“pic”+i).pd1 = 0; //位置变量

eval(“pic”+i).pd2 = 0;

}

for (var i = 1; i

eval(“pic”+i).onPress = function() {//图片接收鼠标按下信息

this.startDrag(); //将图片拖动

this.swapDepths(20); //深度置为20

this._alpha = 65; //透明度为65

m1_array[this.pd1-1] = 0;

m2_array[this.pd2-1] = 0;

};

eval(“pic”+i).onRelease = function() {

this.stopDrag(); //停止拖动

tmp = Number(this._name.slice(3, 4)); //提取图片元件中的数字

this.swapDepths(tmp); //交换为原来的深度

this._alpha = 100; //透明度为100

if (this.hitTest(m1_mc)) { //如果与答案框一接触

end = 0;

for (var m = 1; m<7; m++) {

if (end == 0) {

if (m1_array[m-1] == 0) {

this._x = xx_array[m-1];

this._y = yy_array[m-1];

m1_array[m-1] = 1;

answer_array[tmp-1] = 1;

trace(answer_array);

end = 1;

this.pd1 = m;

this.pd2 = 0;

pd3 = 0;

continue;

}

this._x = picx_array[tmp-1];

this._y = picy_array[tmp-1];

answer[tmp-1] = 0;

this.pd1 = 0;

this.pd2 = 0;

pd3 = 0;

}

}

} else if (this.hitTest(m2_mc)) {

end = 0;

for (var m = 1; m<7; m++) {

if (end == 0) {

if (m2_array[m-1] == 0) {

this._x = xx_array[m-1]+240;

this._y = yy_array[m-1];

m2_array[m-1] = 1;

answer_array[tmp-1] = 2;

trace(answer_array);

end = 1;

this.pd1 = 0;

this.pd2 = m;

pd3 = 0;

continue;

}

this._x = picx_array[tmp-1];

this._y = picy_array[tmp-1];

answer[tmp-1] = 0;

this.pd1 = 0;

this.pd2 = 0;

pd3 = 0;

}

}

} else {

this._x = picx_array[tmp-1];

this._y = picy_array[tmp-1];

this.pd1 = 0;

this.pd2 = 0;

pd3 = 0;

}

};

}

answer_show.onRelease = function() {

answer._visible = true;

key = 0;

for (var i = 0; i<6; i++) {

if (answer_array[i] == key_array[i]) {

key++;

}

}

answer.right_num = key;

};

answer.head.onPress = function() {

answer.startDrag();

};

answer.head.onRelease = function() {

answer.stopDrag();

};

answer.close_win.onRelease = function() {

answer._visible = false;

};

answer.answer.onRelease=function(){

for(var i=1;i<7;i++){

eval(“pic”+i)._x=ansxx_array[i-1];

eval(“pic”+i)._y=ansyy_array[i-1];

eval(“pic”+i).onPress=function(){ };

eval(“pic”+i).onRelease=function(){ };

}

}

篇2:拖动与碰撞的应用,Flash学习

原理很简单,用点到直线的距离进行判断,没加回帧,所以如果加上碰撞反应,会有问题,代码如下:

import fc.math.Degree;

class Wall {

private var _wall:MovieClip;

private var _cenx:Number;

private var _ceny:Number;

private var _k:Number;

private var a1:Number;

private var b1:Number;

private var c1:Number;

public function Wall(w) {

_wall = w;

init;

}

public function get target():MovieClip {

return _wall;

}

private function init():Void {

_cenx = _wall._x;

_ceny = _wall._y;

_k = Degree.tanD(_wall._rotation);

a1 = -_k;

b1 = 1;

c1 = _k*_cenx-_ceny;

}

public function checkCollision(mc):Boolean {

var x0 = mc._x;

var y0 = mc._y;

var r = mc._width/2;

var t1 = a1*x0+b1*y0+c1;

var t2 = a1*a1+b1*b1;

return t1*t1/t2

}

}

//test

import Wall;

var t1 = [new Wall(line1), new Wall(line2), new Wall(line3), new Wall(line4)];

setInterval(test, 30);

function test() {

for (var i in t1) {

var t = t1[i].checkCollision(mc);

if (t) {

t1[i].target.gotoAndStop(2);

} else {

t1[i].target.gotoAndStop(1);

}

}

}

篇3:拖动与碰撞的应用,Flash学习

由于Flash制作的动画文件小, 所以非常适合在网络中传播。其中利用Flash开发的游戏比较流行, 游戏以简单小巧、操作方便等优点而被广大网民喜爱, 借助于Action Script能够制作出更为细腻, 可玩性强的小游戏。Flash游戏也和采用其他技术制作的游戏一样, 需要对游戏中角色进行控制, 在角色进行移动的过程中, 角色与角色, 角色与物体之间可能发生碰撞, 我们所要研究的就是在Flash游戏中的冲突碰撞检测技术。

1. Flash游戏中的冲突碰撞检测技术

检测两个对象是否有重叠的部分或者某个对象是否覆盖了某个点, 这在一些游戏中是不可缺少的一部分。例如格斗游戏, 两个对战角色是否相碰才是出招是否有效的前提。再比如台球游戏, 如果台球在运动的过程中相碰, 那么它应该有动量传递。正确的进行冲突碰撞检测, 是游戏设计成败的关键点, ActionScript3.0中提供了三种冲突碰撞检测的方法。

1.1 检测两个显示对象是否有重叠的部分

使用显示对象的hit Test Object方法可以检测两个对象是否有重叠的部分。其语法如下:

源显示对象.hit Test Object (目标显示对象) ;

它的返回值为true表示有重叠, false表示没有重叠。但需要注意的是, 这个函数以显示对象的外接矩形框作为评判是否重叠的依据。两个显示对象图像部分重叠当然好理解, 但是如图1所示的两个影片剪辑 (矩形框是外接矩形区域) , 在视觉上虽然没有重叠, 但由于它们的外接矩形区域有交叉的部分, 所以hit Test Object的返回值为true。

还有一个细节需要注意, 如果影片剪辑在编辑过程中, 或者是运行过程中有旋转, 那么此时的情况会如何?例如图1中的五角星, 如果旋转了某个角度, 如图2所示, 那么, 进行冲突检测时, 采用影片剪辑原有的方框 (实线) , 还是大虚线方框, 抑或是小虚线方框?实验结果表明, Flash采用的是大虚线方框作为冲突检测的矩形区域。

1.2 检测显示对象与某一点是否重叠

使用显示对象的hit Test Point方法可以检测显示对象与某个坐标点是否重叠。此时它有两个选项, 一个是使用矩形框作为判断的依据, 另一个更加实用, 是使用显示对象的实体像素作为判断的依据。其语法格式如下:

显示对象.hit Test Point (x, y[, 形状标记]) ;

可选参数即形状标记默认值为false, 它表示使用方框作为判断的依据。参数x和参数y指出了场景中的一个坐标, 当形状标记值为true时, 则判断显示对象的实际形状与指定的坐标点是否有冲突, 当形状标记为false时, 则判断显示对象的矩形区域与指定的坐标点是否有冲突, 如图3所示。

五角星影片剪辑和三个坐标点A、B、C在形状标记不同取值下hit Test Point的返回值如表1所示。

在大多数游戏中, 将尺寸较小的剪辑简化为点, 用hit Test Point检测它与某个对象是否冲突。例如战斗机游戏中, 所有的子弹都被简化成质点。这显著提高了游戏的性能, 也使爆炸点更贴近战斗机的轮廓。

1.3 对位图数据进行像素级别的冲突检测

使用Bitmap Data的hit Test方法可以检测Bitmap Data与另一个Point、Rectangle、Bitmap或者Bitmap Data是否有重叠。它以透明度阈值作为有效像素的根据, 低于阈值的是无效像素。等于或高于阈值的是有效像素, 如果两个对象比较的区域内有重叠的有效像素, 则返回true, 否则返回false。其语法格式如下:

Bitmap Data对象.hit Test (参数列表) ;

hit Test有5个参数, 按顺序为:

first Point (Point) :设定源Bitmap Data左上角在比较空间中的位置。

first Alpha Threshold (uint) :设定源Bitmap Data对象被视为不透明的最小Alpha通道值, 取值0-255。Alpha值小于这个值的像素不参与重叠计算。

second Object (Object) :目标对象, 目标对象可以是Rectangle、Point、Bitmap或Bitmap Data对象。

second Bitmap Data Point (Point) :可选参数, 当目标对象为Bitmap Data对象时才使用。表示目标对象左上角在比较空间中的位置。

second Alpha Threshold (uint) :可选参数, 设定目标Bitmap Data对象被视为不透明的最小Alpha通道值。

hit Test方法提供了一个实现两个可视对象实体冲突检测的思路。即游戏中需要进行严格实体冲突检测的对象制作成带透明通道的位图, 导入Flash后, 这个问题就变成了进行两个Bitmap Data之间的像素级别的冲突检测。

2. 冲突碰撞检测技术的应用

2.1 hit Test Object方法的应用案例

在空战游戏类中, 可以使用hit Test Object方法判断发射出去的炮弹和飞机是否相交, 如果相交, 说明击中目标, 目标应该坠毁。

在开发过程过程中炮弹和飞机均设计成影片剪辑, 通过hit Test Object方法判断这两个影片剪辑的外框是否重叠。如果重叠, 要进行一些处理。首先, 调用相应方法销毁飞机, 接着, 删除炮弹, 然后, 结束这架飞机的碰撞检测, 继续发射下一枚炮弹。其碰撞检测代码为:

2.2 hit Test Point方法的应用案例

在迷宫类游戏中, 迷宫地图可以设计成有规则的四方形地图, 走迷宫的角色 (此处为小方块) 在遇到墙时不能继续往前走, 我们可以使用hit Test Point方法检测角色的边界是否和墙壁发生了碰撞, 从而控制角色的行走。其核心代码介绍如下:

2.3 hit Test方法的应用案例

制作闯关类游戏中, 游戏场景往往有很多障碍物, 游戏玩家必须在不碰到指定障碍物时才能完成任务, 我们可以使用hit Test方法进行严格的实体冲突检测, 根据该方法各参数作用其碰撞检测代码为:

3. 小结

通过几个案例的应用, 我们可以知道, 冲突检测技术跟坐标系统、延迟循环、事件机制、人机交互、角色设计、地图编码与索引等等技术相结合, 组成了Flash游戏的基本技术路线。游戏中两个对象是否重叠往往是游戏逻辑突变点。冲突检测技术应用的关键点又是冲突的边界条件。根据应用的实际需求, 从三种方法中选择一种。从效率和简单化角度考虑, 选择的顺序是:hit Test Object、hit Test Point、hit Test, 而从真实性的角度考虑, 则使用相反的选择顺序。

摘要:本文首先对Flash游戏冲突碰撞检测技术进行了阐述, 然后详细介绍了ActionScript3.0提供的hitTestObject、hitTestPoint和hitTest三种碰撞检测方法, 并开发了三个案例验证了这三种碰撞检测方法在不同情况下的应用需求。

关键词:Flash冲突碰撞检测,hitTestObject,hitTestPoint,hitTest

参考文献

[1]Gary Rosenzweig.ActionScript3.0 Game Programming University (Second Edition) [M].胡蓉, 张东宁, 朱栗华译.北京:人民邮电出版社, 2012.

[2]肖刚.Flash游戏编程[M].北京:清华大学出版社, 2009.

[3]李丽华, 陆玲, 张立磊.Flash游戏中碰撞检测方法的研究与实现[J], 电脑知识与技术, 2012, 4:2369-2371.

篇4:拖动与碰撞的应用,Flash学习

关键词: 电机与拖动    PSCAD软件    永磁同步发电机    教学应用

1.引言

电机与拖动课程是为自动化、电气工程、建筑电气等本科专业开设的一门专业基础课[1]。该课程的重点是讲解直流电机、变压器、异步电机和同步电机的工作原理、工作特性等相关内容,但该课程需要掌握相关磁场与电场的知识,具有概念抽象、公式推导复杂、电机工作特性不易理解等特点,使学生在学习过程中易产生误区[2]。同时,受课程教学与实验条件的限制,学生难以亲自进行相关实验操作,导致教学效果大打折扣。因此,采用仿真的方法不仅能让学生摆脱复杂的公式推导,进一步深入理解电机工作原理、掌握电机工作特性,而且能与实际生产应用相结合,特别是教学与科研的前沿、热点问题,如风力发电。将有效缓解学生学习本课程的压力,激发其学习兴趣,强化教学效果。

2.PSCAD软件介绍

PSCAD/EMTDC是DWoodford博士于1976年开发的一种电力系统计算机辅助设计/含直流电磁暂态计算程序。PSCAD是EMTDC的前处理程序,EMTDC是目前电气工程领域应用最广泛的电力系统仿真分析软件之一[3]。PSCAD/EMTDC主要用于电力系统频域及时域仿真分析,典型应用是计算电力系统遭受扰动或参数变化时,电气参数随时间的变化;也可用于HVDC、FACTS等控制器的设计、电力电子领域等仿真计算,如对交流同步电机的运行状态进行研究。用户通过在控制界面中构造电气连接图,并可设置各元件的参数值,仿真时利用FORTRAN编译器进行编译、连接,其结果可在PLOT窗口中实时生成曲线,以验证仿真结果的正确性,且能与MATLAB软件实行对接。

3.仿真案例

同步电机既可用作发电机,又可用作电动机,但相对于三相异步电动机,其作为发电机的应用更广泛,尤其是当前风力发电与智能电网发展应用中,永磁同步发电机越来越受到人们的关注及应用。本文以永磁同步发电机为例,详细介绍PSCAD/EMTDC软件在电机与拖动课程教学中的应用,其仿真具体步骤为:首先建立仿真系统模型,其次设置运行参数,并进行仿真,再次用PLOT查看及导出仿真波形,最后对仿真结果进行分析,验证其正确性。

(1)建立仿真系统模型。

建立仿真系统模型的具体步骤为:一是用菜单命令File/new/case建立新的仿真工程(project);二是根据目标系统要求或数学模型从MasterLibrary中选择相应模块或元件到主工作区,设置相应电气参数,并用导线连接起来;三是保存仿真系统模型,图1为永磁同步发电机仿真系统模型图。为尽可能模拟发电机实际运行情况,本文还搭建了风模块、风力机WT及转轴DT等模型。

图1    永磁同步发电机仿真系统模型图

(2)设置运行参数,并进行仿真。

仿真运行参数设置主要包括:运行持续时间,运行时间步长,绘图时间间隔、PLOT风格设置等。在工作区用鼠标右击后,在下拉菜单的Projectsettings/runtime中可进行相应设置,本文中运行持续时间为5s,运行时间步长和绘图时间间隔均为50μs。之后在主菜单Build中,选择Run,即可进行仿真运行。

(3)查看及导出仿真波形。

PSCAD为用户提供了直观的仿真波形查看及导出功能,打开PLOT窗口查看仿真波形,用鼠标右击后选择copyFrame,即可进行波形导出。图2为风速变化永磁同步发电机输出的三相电压与电流波形图。

(a)三相电流

(b)三相电压

图2    永磁同步发电机输出三相电压电流波形图

(4)仿真结果分析。

由图2可知,在2.55s时刻,当风速由6m/s变化为11m/s时,风能通过风力机输入给永磁同步发电机的机械转矩随之增加,此时,永磁同步发电机输出的三相电压(Ua、Ub、Uc)基本保持不变,但输出的三相电流(Ia、Ib、Ic)的大小及频率均由小变大。验证了永磁同步发电机输出电流大小与频率随输入转矩变化而变化的工作特性。

4.结语

针对电机与拖动课程在教学过程存在概念抽象、推导公式繁琐、工作特性难理解等问题,本文以永磁同步发电机的仿真过程为例,详细介绍了运用PSCAD软件进行系统仿真模型搭建、仿真参数设置、查看并导出波形和分析仿真结果的教学方法,将抽象、固化的理论教学转换为简洁、直观的教学形式,并将理论知识与当前风力发电的实际相联系,这样不仅有助于学生理解和掌握本课程的重点和难点,而且有助于充分调动学生学习积极性,强化教学效果。

参考文献:

[1]雷永锋,孙莉莉.电机与拖动课程实践教学研究与改革[J].时代教育,2015(5):39-40.

[2]魏立明,陈伟利,韩成浩.基于MATLAB仿真的电机与拖动课程教学改革研究[J].中国建设教育,2014(4):31-33.

[3]李明.风电孤网中功率调节器的研究[D].上海交通大学,2011.

篇5:拖动与碰撞的应用,Flash学习

近年来,随着网络游戏产业的不断发展,网络上出现了大量用Actionscript 3.0制作的游戏。一些社交网站也大量使用了Actionscript 3.0制作的交互游戏,如开心网,腾讯QZone和腾讯校友等网站中都有很多利用Actionscript 3.0制作的交互游戏。本文就以Actionscript 3.0为例讲述简单碰撞检测类游戏的设计实现[1]。

1 碰撞检测类游戏设计关键知识简介

1.1 事件机制

ActionScript 3.0事件模型基于文档对象模型 (DOM) 第3级事件规范,是业界标准的事件处理体系结构,为ActionScript程序员提供了强大而直观的事件处理工具[2]。

程序员可以使用事件侦听器“侦听”代码中的事件对象。“事件侦听器”是编写的用于响应特定事件的函数或方法。要确保程序响应事件,必须将事件侦听器添加到事件目标,或添加到作为事件对象事件流的一部分的任何显示列表对象[3]。

无论何时编写事件侦听器代码,该代码都会采用以下基本结构:

function eventResponse(eventObject:EventType):void

{

// 此处是为响应事件而执行的动作。

}

eventTarget.addEventListener(EventType.EVENT_NAME, eventResponse);

此代码执行两个操作。首先,它定义一个函数,这是指定为响应事件而执行的动作的方法。接下来,调用源对象的addEventListener()方法,实际上就是为指定事件“订阅”该函数,以便当该事件发生时,执行该函数的动作。当事件实际发生时,事件目标将检查其注册为事件侦听器的所有函数和方法的列表。然后,它依次调用每个对象,以将事件对象作为参数进行传递。

1.2 hitTestObject()方法

Actionscript3.0利用hitTestObject()方法来检测两个对象(通常为影片剪辑)是否重叠或相撞,如果两个对象相撞后该方法放回值为true,否则为false。在碰撞检测类和动作类游戏中需要用到该方法[4]。

例如下面代码即可用来检测两个对象是否相撞[5]。

if(mc_instance1.hitTestObject(mc_instance2)){

text1.text="两个对象相撞了!";

……//其他代码。

}

2 游戏设计

本文打算实现一个空中接水果的游戏,当水果从树上掉下来时,参与游戏人员需要利用篮子接住掉下来的水果。若用户丢失的水果超过一定的数量(比如20个),则游戏失败。或者在丢失的水果超过一定的数量(比如20个)之前接住了要求的水果数量(比如20个),则游戏成功[6]。

3 游戏实现

为实现该游戏的功能,需制作几个水果影片(如Apple,Strawberry,Pear,Banana,Orange),还需制作一个水果篮影片(如basket_mc)。程序运行过程中由ActionScript脚本控制水果实例从舞台上端往舞台下端坠落,参与游戏者可以用鼠标拖动水果篮(如basket_mc)来接住落下的水果。游戏核心代码如下所示[7]。

import flash.events.Event;

import flash.display.MovieClip;

var fruitArray:Array=new Array(Apple,Strawberry,Pear,Banana,Orange);

var fruitsOnstage:Array=new Array();

var fruitsCollected:int=0;

var fruitsLost:int=0;

for(var i:int=0;i<20;i++){

var pickFruit=fruitArray[int(Math.random()*fruitArray.length)]

var fruit:MovieClip=new pickFruit();

addChild(fruit);

fruit.x=Math.random()*stage.stageWidth;

fruit.y=Math.random()*-500;

fruit.speed=Math.random()*15+5;

fruitsOnstage.push(fruit);

}

basket_mc.addEventListener(MouseEvent.MOUSE_DOWN,dragBasket);

stage.addEventListener(MouseEvent.MOUSE_UP,dragStop);

function dragBasket(e:Event):void{

basket_mc.startDrag();

}

function dragStop(e:Event){

basket_mc.stopDrag();

}

stage.addEventListener(Event.ENTER_FRAME,catchFruit);

function catchFruit(e:Event):void{

for(var i:int=fruitsOnstage.length-1;i>-1;i--)

{

var currentFruit:MovieClip=fruitsOnstage[i];

currentFruit.y+=currentFruit.speed;

if(currentFruit.y>stage.stageHeight-currentFruit.height){

currentFruit.y=0-currentFruit.height;

fruitsLost++;

field2_txt.text="Total Fruit Lost: "+fruitsLost;

}

if(currentFruit.hitTestObject(basket_mc)){

fruitsCollected++;

removeChild(currentFruit);

fruitsOnstage.splice(i,1);

field1_txt.text="Total Fruit Collected:"+fruitsCollected;

if(fruitsCollected>=20){

basket_mc.gotoAndStop(20);

} else if(fruitsCollected>15){

basket_mc.gotoAndStop(15);

} else if(fruitsCollected>10){

basket_mc.gotoAndStop(10);

} else if(fruitsCollected>5){

basket_mc.gotoAndStop(5);

}

}

if(fruitsOnstage.length<=0){

field1_txt.text="You win! You have collected enough fruit for dinner.";

field2_txt.text="";

stage.removeEventListener(Event.ENTER_FRAME,catchFruit);

}

if(fruitsLost>=20){

field1_txt.text="Sorry! You have lost too much fruit!";

field2_txt.text="";

for(var j:int=fruitsOnstage.length-1;j>-1;j--){

currentFruit=fruitsOnstage[j];

removeChild(currentFruit);

fruitsOnstage.splice(j,1);

}

}

}

}

游戏运行结果如图1所示。

4 结束语

hitTestObject()方法是actionscript3.0中比较重要的方法,利用该方法可以制作很多动作类和碰撞检测类Flash游戏。

摘要:利用Actionscript3.0中的hitTestObject()方法制作了一个简单碰撞检测类Flash游戏。hitTestObject()方法在Flash游戏设计中使用频率高,运行速度快,利用它可以设计很多动作类和碰撞检测类flash游戏。

关键词:碰撞检测,动作,游戏设计,网络游戏

参考文献

[1]吴志华,邱军虎.Flash cs4动画设计与制作[M].北京:人民邮电出版社,2009.

[2]马增友,宋敏,等.Adobe Flash CS4动画设计与制作标准实训教程[M].北京:印刷工业出版社,2011.

[3]Keith Peters.Flash ActionScript3.0动画高级教程[M].苏金国,荆涛,等译.北京:人民邮电出版社,2010.

[4]翟宝利.ActionScript3.0从入门到精通[M].北京:化学工业出版社,2009.

[5]杨东昱.Flash动画即战力ActionScript3.0范例随学随用[M].北京:清华大学出版社,2009.

[6]朱治国,缪亮,陈艳丽.Flash ActionScript3.0编程技术教程[M].北京:清华大学出版社,2008.

篇6:拖动与碰撞的应用,Flash学习

关键词:成本控制 6S管理 实施过程 评价总结

当今社会的一大主题是厉行节约。随着社会的发展,企业管理越来越精细化,企业成本核算显得尤为重要。在电力拖动的教学过程中笔者根据职业学校的特点,结合企业方式、按照企业标准,在教学进程中加入了成本控制的教学环节。这一方法的实施,极大地调动了学生的学习积极性,同时提高了学生的节约意识。

在教学中实施成本控制主要分为三个步骤,前期准备、具体实施和评价总结。

一、前期准备

在课程开设之初,把任务赋值、操作过程、考核标准、对应赋值工时及相应模拟工资等相关事宜由学生和老师共同商讨,依照企业的考核机制,结合学生现状反复考核认证,最后制定出可行的考核模式。

1.引入企业6S管理、模拟企业管理规定进行奖惩,此项内容占总任务的10%

6S管理内容是:

(1)整理。对学习现场物品进行分类处理。

(2)整顿。对非必要物品果断丢弃,对必要物品要妥善保存,使工作学习现场秩序井然、井井有条。

(3)清扫。对学习岗位周边、办公设施进行彻底清扫,保证整洁的工作学习环境。

(4)清洁。维护清扫后的整洁状态、建立相应的规章制度。

(5)修养。持之以恒,从而养成良好的工作和生活习惯。

(6)安全。按章操作,确保人身和学习设备的安全。

2.根据所学内容给出合理的工作任务,根据设计结果进行赋分,此项内容占总任务的20%

在实施该项任务时,一定要切合学生的实际情况,根据学生所学内容布置恰当的学习课题,积极引导学生参与设计,调动学生的积极性和主动性。以接触器、按钮双重连锁控制线路的设计为例,学生在学习该线路后知道线路的特点是工作安全但操作麻烦。如何解决麻烦这一问题呢?帮助学生复习该线路的同时引入复合按钮,让学生分组讨论自主设计。设计要求:

(1)能够正确控制电动机的正反转。

(2)具有合理的保护措施。

(3)工作安全,操作方便。

根据要求让学生自由发挥设计出符合任务的电路图,根据设计要求及使用情况给予相应的分值。

二、设计任务的实施

根据第二步设计的结果,选取最合理、最贴合社会实际生产需求的电路图实施。此项内容占总任务的40%。

1.具体实施措施

(1)分组。2人一组。

(2)选件。按照电路图所需领取元器件及定量材料(突出定量,为后续的节能及评价制定出标准)。

(3)实施。根据电路图及领取的元器件,按照实际工作状况合理有序地展开工作。

2.根据实施情况进行合理打分

(1)根据完成任务的情况先进行分类。

①在规定时间内完成接线任务并试车成功的。

②在规定时间内完成接线任务,但试车存在一定问题。

③在规定时间内没有完成接线任务的。

(2)根据上述分类,结合耗材给予相应的分值:0~40分。

根据前期制定的标准进行合理打分。若出现安全事故,该小组不但在本次环节的成绩为零,还要倒扣分值(模拟企业废品、次品的惩罚),并要求该组成员分析原因、深刻检查、写出教训。

三、评价总结

该环节是对整体任务进行的最后总结,赋值 30%。

第一,根据以上所完成的工作,把得到的分值进行相应的叠加。

第二,对于在整个工作过程中,表现懈怠、不积极或者情绪不稳的相应扣除0~10分。

第三,对于在实施过程中,操作地面不洁、工具乱放、整个工作环境杂乱无序的相应扣除0~10分。

第四,对于在实施过程中,举止不文明、动作不和谐、团队不配合的小组或成员,要进行及时纠正,并在考核成绩里给予相应的扣分处罚。

学生成绩就是三个环节分数的总和。根据所得总分赋予相应模拟工时,同时根据该任务在整门课程的总工时中所占比例得出该组成员在学习该模块时的成绩或本模块工作所赋予的相应工资。完成该任务后,要及时公布学生成绩、工时以及相应的工资,模拟发放工资条,把学生每项得分赋予相应的工资数值,让学生保存好,在该课程结束后,相应的工资数加起来就是本学期的考试成绩。通过在整个教学过程中实施量化评价,将学生的学习效益、品德养成、职业素养作为考核标准和依据。

任何一种学习方法都不是万能的,但在学生学习过程中加入成本的控制及核算,能够极大地提高学生的节约意识,增强学生的学习积极性和主动性。同时促使教师结合企业发展的要求进行实践教学,实行由定性到定量的教学考核方式,更加适应当今社会的发展。

篇7:拖动与碰撞的应用,Flash学习

一 、“为理解而教学” 模式概念的理解

“为理解而教学”并不是一个全新的概念,帮助学生理解也一直是教学最重要的目标之一。“为理解而教学”模式就是设计、实行并反思以培养学生理解为目的的课堂实践,这就是“为理解而教学”模式的实质所在。什么是“为理解而教学”模式,“为理解的教学(understanding for teaching,UfT)”是1989~1996 年由附属于哈佛大学教育学院的零项目研究人员和教育家研究开发的一个教学模式,用于课程及教学的设计、修改和审核,以帮助学生增强理解。

为理解而教学模式产生于建构主义的教学理念。这种教学理念认为学习是通过学生持续不断的努力并结合实际生活中的问题而产生的。解决实际生活中的问题需要学生积极地探索、在传统的基础之上创造新的产物。这个模式可以帮助教师设计有效的教学方案,来帮助学生形成并加深对重要概念的理解。

可以把为理解而教学模式比喻为照相机的取景框,为更清晰地确定理解目标,使教学更直接地针对重要的学科内容,UfT能帮助我们对教学进行“取景”,即选择教学内容和教学方法。

这个模式能帮助我们思考教学中容易忽略的东西,思考如何把各个部分相结合,帮助学生促进理解。这个模式强调更积极的“从行动中学习”的观点,这种观点要求学生通过他们的行为、语言和作品来“展现”不断发展的理解。这个模式通过相互联系的很多方面(选择启发性论题、明确理解目标、针对理解目标要求学生积极参与理解活动、通过持续性评价经常检查学生的理解情况),促进学生在积极地参与中加深对事物的理解。

那么什么是“理解”呢?理解是在新的场景中灵活运用理论和概念的能力。理解是指有能力进行一系列行为或活动来展示对主题的掌握,并进一步加强掌握程度,是指能够学习知识并以新的方式运用知识。而我们如何才能获得真正的“理解”呢?答案很简单:实际应用!在“为理解而教学”模式中,这种实际应用的活动被称为“理解活动”。 那么,是否学生进行的所有活动都是“理解活动”?显然不可能。尽管理解活动可以有很多种,但是按照定义,学生只有在超越他们的已有知识时才可能进行理解活动。而诸如判断对错,或者做有标准答案的代数习题等,这些活动有其重要性,但是根本称不上是“理解活动”,也不能增进学生的理解能力。

二、“为理解而教学” 模式结构

为理解而教学模式有四个相互作用的结构组成,这四个结构将分别引导教师思考一个在决定教学内容和教学方式时必须考虑的基本教学问题。为理解而教学模式帮助我们把这些教学设计(包括规划、审核、评估和教学过程)的重心放在帮助学生增强理解方面。在教学设计过程中,作为教师必须考虑的四个基本教学问题以及相对应的“为理解而教学”模式的四个结构组成分别是:

教师应该教什么?启发性论题,模式的评价标准——问话准确鲜明;师生积极参与互动,便于找到资源;与现实生活丰富联系。

学生应该学什么?理解目标!模式的评价标准——交待学生目标;师生重复并跟进活动;为理解而不为作业。

学生需要做什么(才能达到学习的目的)?理解活动!模式的评价标准——在场景中引开话题;概念思考;聚焦主题内容;用行为表现出自己的理解。

我们如何知道学生掌握了什么内容?持续性评估!模式的评价标准——“理解”在教学中,而不是教学后;学习和理解,而不是评分划等;多元评价;学生知道评估标准。

三、“为理解而教学” 模式实施过程

在近年来的《电力拖动控制线路与技能训练》课程教学中,笔者根据上述四个基本教学环节采用了“为理解而教学”模式,下面介绍一个比较典型的控制线路——某车床的一台主轴电动机,要求能正反转控制,并要求有短路、过载、欠压和失压保护,试设计并装接。

1.启发性论题

启发性论题涵盖的范围很广,这也是它们能激发学生兴趣的一个原因。这些论题使学生能够进行广泛的联系,让学生们将他们与论题相关的知识或体验显现出来。这些论题还能使教师看到学生可能产生的错误想法及学生的理解差距,从而在教学中解决这些问题。启发性论题应该具备以下五个条件:

(1)在学科里的中心作用(非常重要);

(2)有吸引学生参与的潜力(非常重要);

(3)有吸引你的潜力;

(4)容易获得资料/资源;

(5)与学科内外众多方面有丰富联系。

根据以上五个条件提出四个师生积极参与互动的启发性论题:

(1)列举现实生活中电动机正反转控制;

(2)如何实现电动机正转到反转;

(3)电动机正反转控制线路如何设计;

(4)短路、过载、欠压和失压保护功能在線路中如何体现。

2.理解目标设计

理解目标设计必须满足以下四个方面:

(1)目标反映理解的多个层面(知识、方法、目的和形式);

(2)目标主要针对的不是行为,而是对关键的学科概念、过程、用法等方面的理解(目标不是用诸如探索、分析、试验、创建等动词来描述的);

(3)目标可以集中在常见的错误理解、潜在假设以及可能阻碍学生形成对论题的深刻理解的瓶颈内容上;

(4)目标应用问句和陈述句两种形式清晰地表达,澄清重要学科概念及其之间的相互联系,使学生、家长、同事都能理解。

根据以上四个方面可提出以下八个理解目标:

(1)熟练使用测电笔、螺钉旋具、尖嘴钳、斜口钳、电工刀等电工工具;

(2)掌握兆欧表,万用表等仪表的结构和原理,并掌握用其测量的技能;

(3)掌握双重连锁正反转控制线路的应用及正确安装;

(4)如何理解线路的自锁与连锁作用以及短路、过载、欠压和失压保护功能;

(5)如何选择器材,检测元件;

(6)熟练绘制控制线路的电气原理图及电器布置图;

(7)按评分标准快速接线,并能在教师指导下安全试车;

(8)学生在实训中遵守劳动纪律,遵守安全操作规程。

3.理解活动的标准

理解活动是“为理解而教学”模式的核心。

理解活动是在教学单元中要求学生参与的一系列学习活动,而不只是在单元结束时的某个活动。在教学单元进行过程中,理解活动使学生在参与中形成理解、纠正错误的理解、显示出他们理解和不理解的东西。理解活动使我们能“看”到学生的思考,思考(用所学的内容进行思考)是理解活动的一个核心。

理解活动难就难在如何将它不断完善。一个好的理解活动需要符合以下四个标准:

(1)学生积极地,甚至充满热情地参与活动;

(2)学生参与的活动要求他们用超出现有的知识去思考;

(3)理解活动要求学生所做和所想的必须有新的内容,让学生置身于一个全新的、不熟悉的场景;

(4)学生所做和所想的必须直接针对需要学生理解的重要学科概念和目标。

根据以上理解活动的四个标准确定本课程以下五个理解活动:

活动前先准备好有关参考资料、绘图纸笔、操作工具、接线板、实习所用器材。活动应在规定定额时间内完成。

(1)分组进行元件检测;

(2)认真设计绘制电气原理图及电器布置图;

(3)根据本组设计的电气原理图完成接线;

(4)通电试车;

(5)小组成员按组内所绘最佳电气原理图接线要求进行评分。

4.持续性评价

持续性评价(评价是检验学生的学习状况)不应该与理解活动(活动是学生的行为、交谈和制作)相混淆。

我们根据具体的标准进行评估,学生熟悉这些标准,有的甚至是由他们自己制定的。通过评价来指导促进学习、提供反馈、对成果进行评估。

综合评定采用三级考核,抓住“设计 、接线试车、实习报告”几个环节,如表1所示。

“为理解而教学”模式注重学生对知识的深度掌握,提高学生的学习兴趣,鼓励将课堂活动与实际生活相联系。尽管不少教师认为,这个模式的有些方面也是他们在日常教育教学工作中应用过的,但我们需要意识到,这个模式能帮助教师思考教学中容易被忽略的东西,思考如何使各个部分相结合,帮助学生促进理解。它的优点不在于“新颖独特”,而在于同样重要的“越来越好”。

更重要的是,“为理解而教学”模式不是一个僵化的模板等着教师去套用,而是一个能够容纳教师的灵活改造、不断反思、持续改进的过程。运用这一模式,更像是旅行观光,尽管有着预定的目的地,但这一过程中充满了变化、惊喜、新的发现和自身的成长。

篇8:拖动与碰撞的应用,Flash学习

【关键词】Flash动画制作;课程教学;基于项目学习

1.教学现状

Flash动画制作技术是一门随着当今科学技术的发展不断成长、不断进步、不断完善的技术。在其发展过程中既产生了有利于 Flash动画制作技术迅速向前发展的契机,也出现了阻碍其向前发展的“绊脚石”。Flash动画制作技术的课程教学需要将Flash动画制作的最新、最实用的技术引进到课堂中[1],但由于学生计算机水平的,个人兴趣、审美能力、创新能力的差异[2],需要对Flash动画制作课程的教学模式进行改进和完善。

2.Flash动画制作课程教学模式改革的探索

《Flash动画制作》课程教学分为基础知识和高级应用两部分。在高级应用部分的教学采用“基于项目学习”的教学模式更能体现基于项目学习的优势。以下介绍以高级应用部分为教学内容的“基于项目学习”模式的教学改革探索研究内容。

2.1划分教学项目

高级应用部分的教学主要是培养学生的实践应用能力,所以该部分的教学目标是:学生能运用所掌握的 Flash知识设计制作出社会所需的常见二维动画作品。根据教学目标把教学内容分为以下九个项目:制作贺卡、制作电子相册、制作标志、制作广告、制作片头、制作导航按钮组、制作网站主页、制作网站和制作课件。项目的划分不局限于某一本教材,而是以学生的特点和社会实际需求来确定教学内容。

2.2“基于项目学习”的教学流程

“基于项目学习”是依据项目的特点,让学生参与到真实的项目设计制作过程中,加强学生实际操作能力的训练,并充分发挥教师的主导和学生的主体作用。在项目实施过程中,学生可以充分利用各种资源,分工合作,讨论交流,共同完成项目设计制作。每个项目教学的一般流程如下:

引入:是由教师根据教学内容,并结合实际情况来引入项目。

实例参考:是由教师提供一系列有关项目的具体实例供学生学习参考,即学习支架的一部分。

实例分析:学生以小组的形式对实例进行讨论分析归纳,归纳出实例的特点,制作的方法和难点等内容,并制作成PPT。

小组分析汇报:小组把分析结果以PPT的形式展现,上传到服务器指定的共享目录,供全班同学分享。每组用2-3分钟时间进行全班汇报(也可以抽查3-5组,视班级的小组数和课堂教学时间而定)。

小组互评1:要求学生填写项目评价表一,主要由组内互评和组间互评两部分构成。组内互评主要是评价组员学习的能力和态度,组间互评主要从项目的要求出发,评价项目分析的完成情况、PPT制作、语言表达和组员的协作能力等。

教师点评1:主要是就学生的小组分析汇报进行综合点评,突出项目特点、制作的方法和难点,起到补讲和精讲的作用。由于学生组内已对实例进行讨论分析归纳,又听取了其他组的汇报,再听教师点评印象就会更加深刻。

学生完成作品:教师给定任务,要求学生以组为单位,根据任务制订计划,分工合作,在规定时间内,利用各种工具和资源完成对应项目的一个特色作品,并制作一个说明文档(PPT格式),内容包括制作思路、制作过程和方法以及收获等。

上交作品:学生按要求上交项目制作的Flash动画特色作品和说明文档到服务器指定的共享目录,供同学们一起分享。

小组作品汇报:每组用3-5分钟时间进行汇报,汇报内容包括制作思路、方法、困难和收获等,同时展示最终作品。

小组互评2:要求学生填写项目评价表二,这部分也主要由组内互评和小组间互评两部分构成。组内互评主要是评价组员在作品完成过程中的能力和态度;组间互评主要从作品的要求出发,评价完成作品的质量、PPT 制作、语言表达和组员的协作能力等。

教师点评2:主要是就学生的汇报进行综合点评,从学生完成项目的态度、作品的质量、PPT的制作和语言的表达等方面进行全方位的点评,肯定优点,指出不足和差距,提供参考意见和解决方法。通过多个组的作品比较,找出有特色的或者有亮点的作品供同学们学习参考。

学生反思:学生对自己完成项目的整个过程进行反思,找出不足和改进的方法。

学生完善作品:学生借鉴其他小组学生使用或者教师提到的方法对本组的作品进行修改和完善。

2.3课程考核评价方式

本课程考核评价改变传统的单一评价方式而采用多元评价方式,由过程性评价和终结性评价组成。过程性评价占最后总成绩的70%,終结性评价占最后总成绩的30%。过程性评价主要是档案评价,包括课堂考勤、项目小组互评、项目教师评价、平时作业及各种参赛记录等内容。项目小组互评是过程性评价的重要组成部分,包括组内互评和组间互评。

3.经验总结

传统教学模式以教师为主体,教师教授什么学生就被动接受什么,但是 Flash动画制作是一门操作性强、设计性强、知识内容丰富的学科,要求学生具有极强的创新思维能力和动手操作能力,传统教学模式已不适用。所以变革教学模式,势在必行。新的教学模式,要求必须确立学生的主体地位,充分调动学生的积极性,真正地做到教师寓教于乐,学生乐在其中,同时启发学生不断地探索Flash动画制作技术的精髓,在教师的正确引导下实现教学目标。

传统教学模式不能让学生们真正地感受到动手实践能力的重要性和Flash动画制作的优点所在,课堂氛围往往不够生动、活泼。而全新的教学模式是要让同学在进行Flash动画制作中真正地做到分组讨论、分工协作,体会到集体的重要性;通过Flash动画的制作,使学生了解其精髓,进而在实践应用时更加得心应手。

兴趣是最好的老师。学习Flash动画制作技术,要充分培养学生的学习兴趣,提高学习能力,充分发挥创新思维、发散思维,这需要学生和教师共同努力。随着课堂教学的深入,要让学生充分意识到学习Flash动画制作技术,不仅是为了完成学习任务,不要为了学习而学习,而要为了兴趣而学习。例如在讲述Flash动画制作知识时,引导学生进入情境:通过Flash学习,可以设计自己喜欢的游戏,可以创造出自己渴望的动画人物,创造出属于自己的天地等等。之后向学生介绍网上比较流行的Flash动画,有耐心地讲述Flash制作技巧和方法,使学生对该课程有一个全新的认识,提升了学生学习的兴趣,也提高了欣赏动画的能力,让学生更加热爱Flash动画制作课程,并为今后Flash动画制作的学习应用建立了良好的开端。 [科]

【参考文献】

[1]任雪莲.《Flash动画制作》课程教学方法探讨与实践[J].电脑编程技巧与维护,2012,(8):135-136.

上一篇:业主委员会主任的辞职申请书下一篇:二十周年同学聚会