




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、AppInventor,animation -wuhuth,goal,主要介绍了Canvas和ImageSprite的使用,以及一些高级的动画功能,如边缘检测、碰撞处理和Sprite操作。掌握画布的使用,了解画布的坐标系,掌握精灵的使用,了解边缘检测和碰撞处理的原理。画布是一个可以绘制图像的控件。初始画布就像一张没有任何内容的空白幻灯片。用户可以在画布上绘制各种图形,在画布上加载图片作为背景,或者在画布上显示文本。画布是一种常见的控件,它不仅作为绘制图形的载体,还经常作为游戏的背景图片。画布是一个带有触摸感应的二维平面板,采用经典的二维坐标系,原点在画布的左上角。使用坐标点(X,Y)来解释画布
2、的坐标系,其中X表示坐标点与左边缘之间的距离,Y表示坐标点与上边缘之间的距离,并且X和Y都取正值。画布可以在基本控件库中找到。将画布拖到界面设计区域后,画布仅显示为一个小图标,如下图所示。canvas,canvas属性,canvas事件,canvas事件,从点A按手指的过程,慢慢标记,从点B滑动到点C,然后抬起手指。当手指触摸a点时,发生DownLoad事件;当一个手指从A到B到C移动时,它会多次产生一个拖拽事件。手指离开C点时会产生修饰事件.触地和触摸事件仅在手指触摸并离开屏幕时发生。如果手指的触摸点和抬起点是同一个点,则触发触摸事件;如果手指在屏幕上移动,触摸事件将不会出现。画布的“拖动”
3、事件(在手指移动期间连续生成)主要用于跟踪手指移动轨迹。该事件提供了三个坐标,即移动的开始坐标点(StartX和StartY),生成事件时的当前坐标点(CurrentX和CurrentY),以及生成前一个事件时的坐标点(PrevX和PrevY)。以右边的场景为例,如果在从点A到点C的过程中,拖拽事件只在点B和点C生成,那么移动的开始节点是点A,而在点C生成的事件中的当前节点是画布甩出事件,画布甩出事件只有当手指在屏幕上快速挥动时才会生成。以右边的场景为例,如果手指在从A到C的过程中在屏幕上移动得足够快,当手指在C处抬起时,将会产生一个投掷事件。甩出事件提供了笔画开始节点的坐标、笔画方向、速度以
4、及x轴和y轴上的速度分量。Canvas Event,CanvasEvent,CanvasEvent,CanvasEvent,CanvasEvent,CanvasEvent事件示例解释事件响应的时间和提供的数据。以上图片是界面编辑器中的界面,也是手机运行时的界面。在CanvasEvent示例中,画布控件位于顶部,各种事件数据的显示区域位于底部。在上面的画布上触摸或滑动,事件的响应结果将显示在界面的下部。示例CanvasEvent逻辑控制模块、DownLoad事件处理程序逻辑模块、TouchUp事件处理程序逻辑模块、Touch事件处理程序逻辑模块、画布方法、画布方法以及画布支持的方法都要求用户提供
5、坐标作为基本参数,但清除和保存方法(如DrawPoint和GetPixelColor)除外。下图显示了用户在画布的所有方法中需要提供的参数。canvas方法,相机,相机控件是一个非视觉控件,可以用手机的镜头拍照。相机控制可以在媒体控制区域找到。相机控制只支持一种方法,拍照。当这个方法被调用时,手机会拍照。方法结束后会引发AfterPictures事件。相机,余像事件是在拍照后生成的,其中图像是用于将图片存储在手机中的路径信息。摄像头、加速度传感器控制和加速度传感器控制用于检测手机的加速度,可以测量手机在三个方向晃动时的加速度,测量单位为m/s2 (m/s2)。加速度传感器控制可以在传感器区域找
6、到。加速度传感器控制支持x加速度、y加速度和z加速度,每个加速度值都有正值和负值。当设备左侧升高时,x加速度值为正值,当右侧升高时,x加速度值为负值。手机处于水平位置,下部抬起时Y加速度为正,上部抬起时Y加速度为负。手机处于水平位置,屏幕向上时z加速度为正,屏幕向下时z加速度为负。此外,当手机屏幕朝上且水平放置时,z加速度约为9.8m/s2。加速度传感器控制、加速度传感器控制和加速度传感器控制支持的事件包括加速度变化和晃动。当加速度传感器的加速度发生变化时,会调用AccelerationChanged事件,并根据加速度传感器的变化返回x、y和z加速度值,从而可以从三个方向确定手机抖动时的加速度
7、。当手机震动时,震动事件会被呼叫几次。加速度传感器控制、方向传感器和方位传感器控制是非视觉控制,可用于测量手机三轴角度的变化。界面编辑器中的方向传感器控件如下图所示。方向传感器,将手机正面朝上放在水平桌面上,沿手机屏幕的水平方向(左右)定义为X轴,水平方向(前后)定义为Y轴,垂直于手机屏幕的方向(上下)定义为Z轴。方向传感器可以反馈滚转、俯仰和方位三个数据。方向传感器的数据单位是度,有正负两点。方向传感器,Roll表示移动电话的x轴和水平面之间的角度,范围从-90到90。当手机水平放置时,数值为0,向左倾斜时,数值从0增加到90,向右倾斜时,数值从0减少到-90。间距表示移动电话的Y轴和水平面
8、之间的角度,范围从-90到90。当移动电话水平放置时,当Y轴向下倾斜时,数值从0增加到90,当Y轴向上倾斜时,数值从0减少到-90。方位角表示方位,即当移动电话水平放置时,磁北极和y轴之间的角度,范围从0到360。y轴指向正北时为0,指向正东时为90,指向正南时为180,指向东西时为270。方向传感器,方向传感器,补充注释:图中的坐标轴X,Y,Z与传感器中的X,Y,Z无关!如上图所示,绿色部分表示手机,带小圆圈的末端表示手机头部传感器中的X:如上图所示,规定X的正半轴为北,手机头指向O的方向,其中X的值为0。如果手机头指向OG方向,X值为90,指向OH方向,X值为180,指向OE,X值为270
9、。Y方向传感器:现在我们沿着BC轴慢慢抬起手机,也就是说,手机的头部不动,手机的尾部慢慢向上倾斜,直到ad运行到BC的右侧,落在XOY平面上,Y的值会从0-180变化,这就是Y方向传感器的含义。传感器中的Z:现在我们沿着AB轴慢慢提起手机,也就是说,手机的左框不动,右框慢慢向上倾斜,直到CD运行到AB的右边,落在XOY平面上,z的值将从0-180变化。如果手机沿光盘轴缓慢上升,也就是说,手机的右框架不会移动,直到AB运行到光盘的左侧,并落在XOY平面上,这就是方向传感器中的Z的含义。方向传感器,方向传感器,幅度,表示手机的倾斜程度,是一个介于0和1之间的数字。角度,表示倾斜角度。方向传感器只有
10、一个事件,即方位改变,它是在移动电话的方向改变时产生的,并返回滚动、俯仰和方位数据。即使它仍然被放置在水平面上,移动电话的方向传感器仍然可以检测到轻微的方向变化,因此可以认为定向改变事件是一个连续的事件,并且处理过程方向传感器应用示例,方向传感器应用示例,图像子画面,将子画面放在画布上,子画面将接受触摸或拖动操作,并且如果设置了子画面关于移动的一些属性,则子画面可以以预定的方式移动。要实现图片向导每1000毫秒向左移动10个像素,必须将其“速度”属性值设置为10个像素,“间隔”属性设置为1000毫秒,“标题”属性设置为180度,“启用”属性设置为“真”。当向导的“旋转”属性设置为“真”时,图片
11、将根据向导方向的变化而旋转,设置的参数如图所示。image sprite,image sprite,image sprite,x和y是图像sprite在画布上的坐标,当x为0时,表示图像sprite已经到达画布的左边界;当y为0时,表示图片向导已经到达画布的上边界。“已启用”属性指示是否将激活映像向导。如果设置了与移动相关的向导属性,并且“已启用”为真,则图像向导将在画布上移动。可见属性确定图像向导在画布上是否可见。属性“标题”是图像向导的移动方向,其值范围为0到360,其中0表示水平向右,90表示垂直向上,180表示水平向左,270表示垂直向下。图像向导、图像向导、图像向导和向导控件实现了向
12、导的移动、弹跳和碰撞检测。colladingspirit方法用于检测图像向导是否发生冲突。当返回值为真时,表示它与指定的向导或画布边缘重合;当返回值为假时,不会发生冲突。MoveIntoBounds方法是将控件从边缘移回画布边缘。图像精灵,碰撞检测,碰撞检测是一种在精灵移动过程中检测精灵的边缘与其他精灵或画布边缘接触的技术,常用于游戏开发过程中。一般来说,只有在游戏中的物体移动后才需要进行碰撞检测,所以碰撞检测的过程分为三个步骤:更新物体位置进行碰撞检测和碰撞处理。碰撞检测,碰撞检测通常包括三个方面。首先,确定检测对象。游戏中有很多物理物体,在碰撞检测中没有必要检测所有的物理物体。例如,不需要
13、检测一个静态的宝箱是否与另一个宝箱碰撞。因此,在开始碰撞检测之前,我们必须首先确定碰撞检测的对象是什么。其次,检测是否存在碰撞是检测的核心环节。在这个环节,我们需要考虑游戏本身的需求和运行平台的性能,并选择合理的碰撞检测算法。最后,处理碰撞。当检测到碰撞时,有必要根据碰撞的类型进行处理。例如,炮弹击中目标后会爆炸,给目标带来伤害。球(Ball)是一个特殊的图像向导,具有相似的属性和相同的事件和方法。不同的是球体不能有自定义的外观,但是球体的大小和颜色可以改变。球体,球体,球体和图像精灵有相同的事件和方法。以下内容主要介绍与碰撞检测相关的事件和方法。与球体碰撞检测相关的事件包括碰撞事件、无碰撞事
14、件和墙壁碰撞事件。碰撞是当前图像向导与其他向导或画布边缘碰撞时生成的事件。此事件的另一个参数是冲突向导的名称。球体,无碰撞事件(NoLongerCollidingWith)是当前elf与已经碰撞的elf分离时产生的事件,它是碰撞事件的相反事件。当两个精灵碰撞时,碰撞事件首先发生。如果两个精灵被弹开,无碰撞事件将立即发生。此事件的参数other1是冲突向导的名称。当图像子画面移动到画布的边缘时,出现球体、边缘到达。当向导移动到画布的边缘时,它将产生一个触壁事件。如果不处理此事件,向导将移出画布边界;相反,如果精灵的移动方向在碰到墙壁时被反转,精灵将再次回到画布上。球体,触摸墙壁事件的参数边缘指示到达的画布边缘,并且画布的不同边缘由数字表示。1表示北,2表示东北,3表示东,4表示东南-1表示南-2表示西
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林师范大学博达学院《医学信号处理》2023-2024学年第一学期期末试卷
- 2025届河南周口港区数学七年级第一学期期末考试试题含解析
- 安徽中医药大学《预应力钢结构》2023-2024学年第一学期期末试卷
- 2025届湖北省黄冈市季黄梅县七年级数学第一学期期末质量检测试题含解析
- 江苏省洪泽县联考2025届九上化学期末检测模拟试题含解析
- 浙江省绍兴市名校2025届数学七年级第一学期期末检测模拟试题含解析
- 河源退役军犬管理办法
- 安徽矿业职业技术学院《商务英语》2023-2024学年第一学期期末试卷
- 泉州健康人员管理办法
- 法院开庭公告管理办法
- 钢与混凝土组合结构课件
- 店铺租房承诺书范本
- 二升三数学暑假作业
- 职业卫生知识竞赛题
- 钢结构接水盘施工方案
- 医院关于支持医务人员从事晚间门诊和节假日门诊的措施
- 酒店住宿水单标准模板
- 中华民族大家庭教学设计(完整版)资料
- 炭疽传染病讲座
- 新生儿硬肿症的护理查房
- 生产设备综合效率 OEE
评论
0/150
提交评论