晁政 刘鸿宇 黄武 黎人华 康勇
【摘要】针对传统机能学实验教学单一、条件不足、学生参与少的问题,探索虚拟实验教学平台的开发。对比各种虚拟仿真技术选择Flash作为开发平台,以其简单灵活、视觉冲击力震撼及交互性强的特性,模拟操作复杂且难以理解的机能学实验。以豚鼠心肌细胞动作电位测定为例演示基于Flash的虚拟实验技术的开发。
【关键词】机能学;虚拟实验技术;Flash;豚鼠;心肌细胞动作电位
Abstract:Aiming at single,insufficient facilities and funds,and less students-participation teaching methods in traditional experimental teaching of functional science course,the authors explored experimental platform based on virtual system. Through comparisons of various virtual simulation technology methods,we select Flash as the development platform because that it is simple,flexible,more visually attractive and high interactivity,so that wo can simulate complicated and incomprehensible experimentation. Taking action potentials in guinea pig ventricular myocytes to demonstrate the development of virtual experiment based on Flash technology.
Key words:functional science;virtual experiment;Flash;guinea pig;action potential in ventricular myocytes
一、引言
机能实验学是将生理学、病理生理学、药理学三门课程的实验内容有机融合在一起,体现学科间的交叉融合和新技术的应用以及培养学生创新能力的课程。因为传统机能学实验的对象多为活体动物或离体器官组织,从而教学中存在一些困难进而影响教学质量。
1.实验成本高且一些大型仪器设备陈旧和数量有限,学生人数很多,同时只能有部分学生操作而其余学生围观,因而不能熟练操作仪器设备。
2.实验操作精细且困难大,由于实验教学场地和课时限制,学生大多没有很好的预习和复习,未能掌握实验操作技术,从而厌恶实验[1]-[3]。
虚拟实验技术凭借软件模拟的优势可以解决这些问题,目前虚拟实验技术包括Java技术、QuickTime VR技术、VRML技术Flash等,其中Flash作为一种矢量多媒体技术是为创作网络交互式动画所开发。Flash具有很强的交互性、图形矢量性的同时保证了很小的动画体积;采用Actionscript这种面向对象的脚本语言使得当特定事件发生动作时可以控制对象,非常适合交互式虚拟实验平台的建立;开发周期短适合演示性虚拟实验。虽然Flash的交互性不如VRML,数据处理能力不如Java但其开发的简单灵活以及以上三种特性使得Flash成为开发教学虚拟实验的最佳平台[3]-[6]。
二、以机能学中豚鼠心机细胞动作电位实验为例介绍基于Flash的虚拟实验技术的开发
1、实验步骤
(1)取出心脏分离乳头肌;(2)拉制玻璃微电极;(3)调试仪器记录动作电位。
2、虚拟实验
(1)制作素材并将素材导入Flash库
首先,用photoshop或者coreldraw,AI等绘图软件制作好实验所需器械及动物模型等各种素材绘如豚鼠、HF-100抗干扰台、BL-420、手术剪等;然后打开flash cs4,新建一个ActionScript 2.0的文件,在菜单栏打开文件-导入-导入到库-把做动画需要用到的素材导入到flash的库中。
(2)构建虚拟实验室
1)布置舞台设置原件
ctrl+F3调出属性面板对新建的文件进行设置,设置好舞台需要的背景的颜色,大小和帧频等。为了方便管理和维护,我们选择把动画做到mc影片剪辑里面,先把鼠笼等拖入到舞台上,调整好位置和大小过后,F8转换为原件,选择下面的影片剪辑属性,再点击右键调出标尺或者按快捷键Ctrl+Shift+Alt+R拉好辅助线,这是为了确定精准的位置,特别是有变化的地方,一定要调整好位置和大小,否则画面会有错位的跳跃感(见图1)。
2)动画实现
以取豚鼠离体心脏为例:首先从抓豚鼠开始,我们需要在mc里面新建一个图层,命名为手套,把戴手套的各个动作素材拖放到舞台上,按照帧顺序依次排列好,动画连贯性以一拍三8帧画面为主,接着需要给鼠笼做一个遮罩用以产生穿插感的,把鼠笼、笼盖子放到两个图层中,再新建一层,点击右键勾选上“遮罩层”选项,再把鼠笼拖入到遮罩层下方,会发现遮罩层和被遮罩层都发生了图标变化。设置好后在遮罩层中插入关键帧选择相关绘制工具绘制出遮罩图案部分(有图案的地方才会被显示),绘制好后同时锁定遮罩层和被遮罩层移动笼盖测试效果,看是否遮好,然后在手套戴好需要打开鼠笼的位置编辑笼盖,鼠笼是固定不动的,需要给盖子添加动作,配合上手打开笼盖的动作把盖子移动到相应的位置,提起后插入关键帧,再延迟几帧后插入关键帧或者快捷键F6插入关键帧,移动笼盖和手到移动的终点位置,再在此移动帧中间选任意一阵单击右键选择插入传统补间,这时候插入补间的地方会有一条箭头,接下来是手要伸入笼子里抓豚鼠,由于要产生交错感,需要给手也添加一个遮罩,把抓豚鼠的手的图层拖入到“遮罩层”的下面,再插入帧编辑这只手的位置,于是就产生了手伸入到了笼子里面的感觉。
3)代码实现
在以上交互中需要用到的代码用的是actionscript 2.0,我们可以将代码写到按钮上,帧上。
新建一层,把做好的按钮放到这个层上面,在相应需要交互的按钮上写下代码。
(1)比如点击下一帧上一帧的代码可以写作:
on(release){
nextFrame();
},
on(release){
PrevFrame();
}
(2)当点击按钮需要跟随鼠标的代码如下:
Mouse.hide();
mc1.onMouseMove=function(){
this._x = _xmouse;
this._y = _ymouse;
UpdateAfterEvent();
}
Mc1是指定要跟随鼠标的影片剪辑,里面的内容可以是一张图片,动画,影片。
(3)当需要拖动一个工具去响应另一个动作时就需要用一下代码:
OnClipevent (mouseDown){
If (hit Test (_root._xmouse,_root._ymouse.false)){
startDrag(“”,true);
x = this._x;
y = this._y;
}
}
onClipEvent(mouse up){
if (!hitTest(_parent.regionl)){
this _x = x;
this _y = y;
}else{
_parent.nextFrame();
}
StopDrag();
}
注释:其中regionl 是感应区,也就是一个隐藏的透明按钮。
(4)调用和控制库里面的影片剪辑以及键控,比如:
On(release,Keypress”
gotoAndPlay();
}
(5)在页面上的小按钮也可以添加相应的代码,比如主页就可以写:
On(release){
Get URL(http://www.xxxxxxx.com,“blank”);
}
或者:
on(release){
gotoAndStop();
},
三、结束语
本文将Flash技术应用于机能学中豚鼠心肌细胞动作电位的测定,细化了各个步骤并附有视觉冲击感;减轻了经费不足、大型仪器少、场地不够等困难;学生多可以使学生在实验前后随时观看并与实验互动,熟练实验步骤、深刻理解实验原理和结果以及熟练操作实验仪器,从而提高教学质量。
参考文献
[1]李涛,谭安雄.医学技能学虚拟实验室的构建与应用[J].中国数字医学,2012,07(6):23-25.
[2]王璁,屠幼萍.基于Flash的高电压虚拟实验室探索[J].电气电子教学学报,2013,35(2):98-100.
[3]刘惠萍,张国民,喻嵘,等.虚拟实验平台在医学机能学实验教学中的作用[J].中医教育,2014,33(3):12-13.
[4]高振国.基于Flash建立的虚拟液压回路系统的研制[J].现代教育技术,2008,25(8):83-88.
[5]王军.基于Flash的虚拟物理试验室的设计方法[J].曲阜师范大学学报,2008,34(4):81-84.
[6]张刚,罗小华,贺利芳.基于Flash技术的网络虚拟实验平台开发[J].高等教育研究,2007,24(4):50-52.