ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:119KB ,
资源ID:8971937      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/8971937.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(APEngine物力引擎简介.doc)为本站上传会员【s4****5z】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

APEngine物力引擎简介.doc

1、APE(物力引擎) APE,设么是APE呢。APE(Actionscript Physics Engine)是一个ActionScript3写成的物理引擎,用于模拟现实中物体发生的运动和碰撞。它是免费、开源的,遵循MIT协议。 看来特别适用用来做游戏开发,已经有许多很有趣的应用使用这个开发的 。 现提供了Java Port,和C++ SDL Port 官方网址为:http://www.cove.org/ape/ 下载地址为:http://www.cove.org/ape/ape_a045.zip(包含两个demo,api,swc文件,和源码) 官网的两个例子: Demo1: ht

2、tp://www.cove.org/ape/demo1.htm Demo2: http://www.cove.org/ape/demo2.htm API地址: http://www.cove.org/ape/docs/api/ 下面中文版,网上搜集的 APE中总共才12个类,用起来相当的方便。这12个类的继承关系如下: 目录: AbstractCollection Group Composite AbstractItem AbstractConstraint SpringConstraint AbstractParticle RectanglePart

3、icle CircleParticle WheelParticle Vector APEngine AbstractCollection(子类有:Group和Composite) 此类为群组性的基类。你不应实例化这个类,而应该使用该类的子类。 属性: constraints 属性 constraints:Array [只读] 一个数组,包含所有被加入到AbstractCollection中的AbstractConstraint类的实例。 particles 属性  particles:Array [只读] 一个数组,包含所有被加入到AbstractCollecti

4、on中的AbstractParticle类的实例。 sprite 属性   sprite:Sprite [只读] 为渲染和增加children而提供的作为容器使用的Sprite。当这个sprite第一次被请求时,这个sprite会自动的加入到APEngine类的全局容器中。 构造函数: public function AbstractCollection() 方法: addConstraint () 方法 public function addConstraint(c:AbstractConstraint):void 在收集器中增加一个约束。 参数 c:Abstract

5、Constraint — 被加入的约束. addParticle () 方法  public function addParticle(p:AbstractParticle):void 在AbstractCollection中加入一个AbstractParticle  参数p:AbstractParticle — 被加入的粒子 cleanup () 方法  public function cleanup():void 调用AbstractCollection每个成员的cleanup()方法. 当AbstractCollection 从他的父容器中被移除的话,cleanup()方法

6、会自动的被调用。 getAll () 方法    public function getAll():Array 返回一个数组,这个数组包含被加入到AbstractCollection.中的每一个粒子和约束。 init () 方法  public function init():void 通过调用每一个成员的init()方法实例化这个AbstractCollection的每一个成员。 paint () 方法    public function paint():void 通过调用每一个成员的paint()方法来渲染 AbstractCollection的每个成员。 remov

7、eConstraint () 方法    public function removeConstraint(c:AbstractConstraint):void 从收集器中删除参数指定的约束。 参数 c:AbstractConstraint — 将被移除的约束。 removeParticle ()方法  public function removeParticle(p:AbstractParticle):void 从AbstractCollection中移除一个AbstractParticle 参数 p:AbstractParticle — 将被移除的粒子 ——————————

8、———————————————————————————————————————————————————————————————————— Group(继承自AbstractCollection) 组可以包含粒子,约束和复合体。组可以被设置为和其他的组进行碰撞检测。 属性: collideInternal:Boolean [读写]  决定这个组内的成员彼此是否进行碰撞检测; collisionList:Array [只读]  返回一个数组,这个数组包含所有和这个组进行碰撞检测的所有组的实例。 composites:Array [只读]  返回一个数组,这个数组包含所有加入到这个

9、组的复合体。 构造函数 public function Group(collideInternal:Boolean = false)  Group是APE中的主要的用于组织的类。一旦创建了组,并把粒子,约束,复合体加入组,那么这些东西也就加入了APEngine。组可以包含粒子,约束和复合体。复合体只能包含粒子和约束。 参数: collideInternal:Boolean (default = false) 方法: addCollidable()方法 addCollidable(g:Group):void 加入一个组的实例与这个组进行碰撞检测。 addCollidableL

10、ist()方法 public function addCollidableList(list:Array):void  加入AbstractCollection实例的数组,让数组中的元素与这个组进行碰撞检测。 addComposite()方法 public function addComposite(c:Composite):void 在这个组中加入复合体 cleanup()方法 public override function cleanup():void  调用组的cleanup()方法将会调用组中所有成员的cleanup()方法。当组从APEngine引擎中移除时,组的c

11、leanup()方法会自动的调用。 getAll()方法 public override function getAll():Array  返回一个包含组中所有粒子,约束,复合体的数组。 init() public override function init():void  通过依次调用组中每个成员的init()方法来初始化组中的每个成员。 paint()方法 public override function paint():void  Paints 组中的所有成员. 这个方法由APEngine 类自动的调用。 removeCollidable()方法 public f

12、unction removeCollidable(g:Group):void  从这个组的collidable list中移除一个组。 removeComposite()方法 public function removeComposite(c:Composite):void  从组中移除复合体。 ———————————————————————————————————————————————————————————————————— Composite(继承自AbstractCollection) 复合体可以包含粒子和约束。复合体可以加入到一个组中,就像粒子和约束一样。注意:复合体

13、中的成员彼此不能进行碰撞检测。 属性: fixed:Boolean [读写] 决定复合体的状态是否固定。设置这个值为true或false将会设置复合体中所有组成的粒子的固定状态为true或false。当复合体中的任何一个粒子的状态为不固定时,这个值返回的都为false。 构造函数: public function Composite() 方法: rotateByAngle()方法 public function rotateByAngle(angleDegrees:Number, center:Vector):void 围绕给定的中心,使复合体旋转参数指定的角度。 rota

14、teByRadian()方法 public function rotateByRadian(angleRadians:Number, center:Vector):void 围绕给定的中心,使复合体旋转参数指定的弧度。 ———————————————————————————————————————————————————————————————————— AbstractItem(子类有:AbstractConstraint和AbstractParticle) 所有约束和粒子的基类 属性 alwaysRepaint 属性  alwaysRepaint:Boolean [re

15、ad-write] 为了更好的运行,为了避免不必要的重绘,固定的粒子和弹性约束不需要调用他们的paint()方法,当一个弹性约束的两端所连接的粒子是固定的话,那么这个弹性约束被认为是固定的。这个属性设置为true的时候,如果粒子和弹性约束的fixed属性也为true的时候,粒子和弹性约束的paint()方法会被强制调用。如果你想要旋转固定的粒子和弹性约束的话,你应该设置他们的repaintFixed属性为true。如果粒子和弹性约束不是固定的话,alwaysRepaint属性是没有效果的。 sprite 属性 sprite:Sprite [只读] 为渲染和增加children而提供的作

16、为容器使用的Sprite。当这个sprite第一次被请求时,这个sprite会自动的加入到APEngine类的全局容器中。 visible 属性  visible:Boolean [只写] 决定这个项是否可见。 构造函数 AbstractItem () public function AbstractItem() 方法 cleanup () 方法 public function cleanup():void 当包含一个项目(粒子或约束)的组(组或复合体)从APEngine移除的时候,这个方法被自动的调用。 init ()方法 public function in

17、it():void 当包含一个项目(粒子或约束)的组(组或复合体)被加到引擎,一个项目(粒子或约束)的复合体被加到组,一个项目(粒子或约束)被加到组或复合体的时候,这个方法会被自动的调用。 paint () 方法  public function paint():void 这个项目的默认的渲染方法。当APEngine.paint()方法被调用的时候会自动的调用这个方法。 setFill () 方法 public function setFill(color:uint = 0xffffff, alpha:Number = 1):void 设置这个项的填充样式。 setLine (

18、) 方法  public function setLine(thickness:Number = 0, color:uint = 0x000000, alpha:Number = 1):void 设置这个项的样条线的样式。 setStyle () 方法 public function setStyle(lineThickness:Number = 0, lineColor:uint = 0x000000, lineAlpha:Number = 1, fillColor:uint = 0xffffff, fillAlpha:Number = 1):void 设置这个项的样条线和填充。

19、 ———————————————————————————————————————————————————————————————————— AbstractParticle类(子类有:CircleParticle,RectangleParticle)(父类是:AbstractItem) 所有粒子的基类 你不应该实例化这个类,而是应该使用这个类的子类。 属性: center 属性 center:Vector [只读] 返回代表粒子当前位置的向量。 collidable属性 collidable:Boolean [读写] 决定这个粒子是否能和其它的粒子或约束碰撞。默认值为tru

20、e。 elasticity 属性  elasticity:Number [读写] 这个粒子的弹性,标准的值在0到1之间。值越大,弹性越大。 在碰撞的过程中,弹性的值是累加的。如果一个粒子的弹性值设为0.4,另一个粒子的弹性制也设为0.4,那么在碰撞的时候弹性值就是0.8了,这和一个粒子的弹性值是0另一个弹性值是0.8产生的效果是一样的。 设置大于1的弹性值(单个粒子大于1或累加后大于1)将会使粒子获得比它原来更多的能量。(尽管现实中不可能,但是这是非常有意思的) fixed 属性 fixed:Boolean [读写] 决定粒子是否固定。如果粒子是固定的话,早受到力的作用和在碰撞

21、过程中将保持不动。固定的粒子非常适合用来模拟表面。 friction 属性  friction:Number [读写] 粒子表面的摩擦系数。值必须在0到1之间 0代表没有摩擦(理想光滑),1代表完全的摩擦(像胶水一样) 在碰撞中,摩擦系数也是累加的,但是被限制在1到0之间。例如,如果两个粒子表面的摩擦系数都是0.7的话,这两个粒子之间最终的摩擦力将会是1(完全的粘在一起) 在当前的版本中,仅仅只考虑动态的摩擦。静态的摩擦在下一个版本中可能会得到支持。 当前的版本有一个bug,那就是当和摩擦系数大于0且不固定的粒子碰撞时会得到错误的行为。一个解决的办法就是,只给固定的粒子设置摩擦系

22、数。 抛出错误 —当摩擦系数的值小于0或大于1时抛出 ArgumentError mass 属性   mass:Number [只写] 粒子的质量。大于0的值均为有效值。默认情况下所有的粒子的质量均为1.质量属性和粒子形状的大小没有关系。 抛出错误 — 当质量小于0抛出ArgumentError multisample属性  multisample:int [读写] 每一次循环中,进行碰撞检测的中间位置值,在一个快速移动的粒子中把这个值适当的设置大一些可以阻止穿透现象的发生。 position属性 position:Vector [读写] 粒子的位置属性。为了一些目的

23、得到粒子的位置是非常有用的。 当你获得粒子的位置的时候,你实际得到的是当前位置信息的一份拷贝。正因为这样,你不能通过修改你从粒子取得的有关位置的向量(Vector)的x参数和y参数来改变粒子的位置。你必须这样做:position=new Vector(100,100),或者你可以用px和py属性来代替。 修改粒子位置的三种方法:改变他的位置(直接),给它设置速度,在它上面应用一个力。设置非固定粒子的位置并不同于把他的fixed属性设置为true那样简单。一个处在它位置属性所指定位置的粒子的行为就好像它连接在一个0长度的弹簧上一样。 px属性  px:Number [读写] 粒子的x

24、坐标 py 属性    py:Number [读写] 粒子的y坐标 velocity属性    velocity:Vector [读写] 粒子的速度。如果你想改变粒子的运动,你应该要么用这个属性,要么用addForce()方法。一般来说,addForce()方法慢慢的改变物体的运动状态,velocity属性适合瞬间的给物体设置一个速度来改变物体的运动状态(例如抛出物体)。 方法: addForce () 方法  public function addForce(f:Vector):void 给粒子加一个力。当应用这个方法的时候,粒子的质量也考虑在内了,所以对于模拟风之类的效

25、果来说,这个方法是非常适合的。 参数 f:Vector —代表被添加力的向量。 addMasslessForce () 方法    public function addMasslessForce(f:Vector):void 为粒子添加一个忽略质量的力。当用这个方法的时候,粒子的质量被忽略。在模拟类似于重力的力的情况,这个方法很适合。 参数 f:Vector —代表被添加力的向量。 setDisplay () 方法  public function setDisplay(d:DisplayObject, offsetX:Number = 0, offsetY:Number =

26、0, rotation:Number = 0):void 在渲染粒子的时候,分配一个显示对象(DisplayObject)来使用。 update ()方法  public function update(dt2:Number):void 在APEngine.step()方法中会自动的调用update()方法。用这个方法整合粒子。 ———————————————————————————————————————————————————————————————————— RectangleParticle——》AbstractParticle——》AbstractItem 矩形的粒子

27、 属性 angle 属性  angle:Number [读写] 矩形粒子旋转的度数。 height 属性    height:Number [读写]  矩形粒子的高度。 radian 属性    radian:Number [读写] 矩形粒子旋转地弧度。 注:尽管矩形粒子可以被旋转,但是它没有角速度。换句话说,在碰撞中,旋转状态不会改变,因旋转而产生的能量也不会应用到碰撞中。 width 属性  width:Number [属性] 矩形粒子的宽度。 构造函数 RectangleParticle ()  public function RectanglePar

28、ticle(x:Number, y:Number, width:Number, height:Number, rotation:Number = 0, fixed:Boolean = false, mass:Number = 1, elasticity:Number = 0.3, friction:Number = 0) 参数 x:Number — 初始x位置  y:Number —初始y位置  width:Number — 这个粒子的宽度  height:Number — 这个粒子的高度  rotation:Number (default = 0) — 这个粒子旋

29、转的弧度.  fixed:Boolean (default = false) —决定这个粒子是否固定。固定的粒子不受力和碰撞的影响,非常适合作为平面。不固定的粒子受力和碰撞的作用自由的移动 。  mass:Number (default = 1) — 粒子的质量 elasticity:Number (default = 0.3) — 粒子的弹性. 值越高弹性越大 friction:Number (default = 0) — 粒子表面的摩擦系数 注意:固定的粒子仍然可以改变它的旋转属性。 方法 init () 方法 public override function init

30、):void 建立矩形粒子的视觉表象,当这个矩形粒子的父组(包含该粒子的组)的实例被加到APEngine中、矩形粒子的复合体被加入到组中、矩形粒子被加入到组或复合体中的时候,这个方法会自动的被调用。 paint () 方法  public override function paint():void 这个矩形粒子默认的渲染方法,这个方法会被APEngine.paint()方法自动的调用。 如果你想要自己定义渲染方法,你可以创建这个类的一个子类,并在子类中覆盖paint()方法。 ———————————————————————————————————————————————————

31、————————————————— CircleParticle——》 AbstractParticle——》AbstractItem 子类:WheelParticle 圆形粒子 属性 radius 属性  radius:Number [读写] 粒子的半径 构造函数 CircleParticle () 构造器  public function CircleParticle(x:Number, y:Number, radius:Number, fixed:Boolean = false, mass:Number = 1, elasticity:Number = 0.3, fr

32、iction:Number = 0) 参数: x:Number — 这个粒子的初始x位置.  y:Number — 这个例子的初始y位置.  radius:Number — 粒子的半径.  fixed:Boolean (default = false) —决定这个粒子是否固定。  mass:Number (default = 1) — 粒子的质量.  elasticity:Number (default = 0.3) — 粒子的弹力,值越大弹力越大。  friction:Number (default = 0) — 粒子表面的摩擦力。 方法 init ()

33、方法 public override function init():void 建立圆形粒子的视觉表象,当这个圆形粒子的父组(包含该粒子的组)的实例被加到APEngine中、圆形粒子的复合体被加入到组中、圆形粒子被加入到组或复合体中的时候,这个方法会自动的被调用。 paint () 方法  public override function paint():void 这个粒子默认的渲染方法,这个方法会被APEngine.paint()方法自动的调用。 如果你想要自己定义渲染方法,你可以创建这个类的一个子类,并在子类中覆盖 ——————————————————————————————

34、—————————————————————————————————————— WheelParticle ——》 CircleParticle ——》 AbstractParticle ——》 AbstractItem 用于模拟轮子行为的粒子 属性 angle 属性  angle:Number [只读] 轮子旋转的角度 angularVelocity 属性  angularVelocity:Number [读写] 轮子粒子的角速度。你可以通过修改这个值使轮子粒子旋转起来。 radian 属性  radian:Number [只读] 轮子旋转的弧度 speed 属性

35、speed:Number [读写] 轮子粒子的速度,你可以通过修改这个值使轮子旋转。 traction 属性    traction:Number [读写] 在碰撞中牵引力的大小。这个属性决定了当轮子粒子和其它的粒子接触是到底有多少牵引力作用在轮子粒子上。如果这个值设为0,将不会有牵引力,就好像与轮子接触的平面是完全光滑的那样。这个值应该在0到1之间。 注意:frection(摩擦系数)和traction(牵引力)的行为是不同的。当轮子粒子在一个摩擦系数非常打的平面运动时,轮子粒子的运动速度将非常慢,好像平面上涂满了胶水。 构造函数 WheelParticle () 构造器 p

36、ublic function WheelParticle(x:Number, y:Number, radius:Number, fixed:Boolean = false, mass:Number = 1, elasticity:Number = 0.3, friction:Number = 0, traction:Number = 1) 参数: x:Number —初始x位置  y:Number —初始y位置.  radius:Number — 粒子的半径.  fixed:Boolean (default = false) — 决定这个粒子是否是固定的。  mass:

37、Number (default = 1) — 粒子的质量  elasticity:Number (default = 0.3) — 粒子的弹力。值越大塔里越大。  friction:Number (default = 0) —粒子表面的摩擦力。  traction:Number (default = 1) — 粒子表面的牵引力。 注:固定的轮子粒子也可以自由度旋转 方法 init ()方法 public override function init():void 建立粒子的视觉呈现。当粒子被加入到引擎时这个方法自动被调用。 paint () 方法  public o

38、verride function paint():void 这个粒子默认的渲染方法。在快速的测试中你应该仅仅用这个默认的paint()方法。如果你有自己的特殊的要求,你应该自己写一个类,要么让这个类继承APE中的粒子或约束,要么把他们组合在一起。然后在你自己的类中定义你自己的渲染方法。 update () 方法  public override function update(dt:Number):void ———————————————————————————————————————————————————————————————————— AbstractConstraint(父

39、类是:AbstractItem)(子类有:SpringConstraint) 你不应实例化这个类,而应该使用它的子类。 属性 stiffness 属性  stiffness:Number [read-write] 是约束变得僵硬,值越大越僵硬。这个值应该在0到1之间。根据运行的情况,这个直设的过高会导致应用不稳定。 ———————————————————————————————————————————————————————————————————— SpringConstraint——》 AbstractConstraint ——》 AbstractItem 一个像弹簧的约束

40、用来连接两个物体。 属性 angle属性  angle:Number [只读] 连接在这个SpringConstraint(弹簧约束)上的两个粒子的位置所构成的角度。你可以在渲染方法中应用这个属性和center属性。 center 属性 center:Vector [只读] 连接在这个SpringConstraint(弹簧约束)上的两个粒子的位置的中心。你可以在渲染方法中应用这个属性和旋转属性。 collidable 属性  collidable:Boolean [只读] 决定两个粒子之间的区域是否接受碰撞检测。如果这个属性打开的话(即为true),你可以修改rectHe

41、ight属性和rectWidth属性来修改接受碰撞检测区域的尺寸大小。 currLength 属性  currLength:Number [只读] 返回弹簧约束(SpringConstraint)的长度,即两个被链接的粒子的距离。 fixed 属性  fixed:Boolean [只读] 如果被链接的两个粒子的fixed属性都为true时返回true。 fixedEndLimit 属性  fixedEndLimit:Number [读写] 当弹簧约束(SpringConstraint)为可接受碰撞的并且两端的粒子只有一个是固定的,这个值将处理固定端粒子附近的碰撞,纠正难以解决

42、的碰撞问题。这个值在0.0到1.0之间。 radian 属性  radian:Number [只读] 连接在这个SpringConstraint(弹簧约束)上的两个粒子的位置所构成的旋转的值。你可以在你自定义的渲染方法中应用这个属性和center属性。 rectHeight 属性  rectHeight:Number [读写] 如果collidable属性为true,你可以设置这两个粒子之间能接受碰撞的矩形区域的高度。这个值是大于零的。如果你设置这个值为10,那么碰撞区域矩形的高度为10像素,这个高度与两个连接的粒子的连线垂直的。 rectScale属性 rectScale:N

43、umber [读写] 如果collidable属性为true,你可以设置这两个粒子之间能接受碰撞的矩形区域的缩放。有效值在0到1之间。如果你将值设为1,这个碰撞区域将扩展到来被链接的两个粒子处。设置一个较低的值,会使碰撞区域按距离的百分比缩放。这个值设的过大会使碰撞矩形扩张甚至超过两端的粒子。 restLength 属性 restLength:Number [读写] restLength 属性设置弹簧约束(SpringConstraint)的长度。如果两端的粒子位置没有因受到外力而改变的话,那么这个属性的值等于两端粒子的距离。弹簧约束将总是试着使两个粒子的距离等于这个属性的值。这个值必

44、须大于0. 构造函数 SpringConstraint ()  public function SpringConstraint(p1:AbstractParticle, p2:AbstractParticle, stiffness:Number = 0.5, collidable:Boolean = false, rectHeight:Number = 1, rectScale:Number = 1, scaleToLength:Boolean = false) 参数: p1:AbstractParticle — 约束所连接的第一个粒子。 p2:AbstractParticl

45、e — 约束所连接的第二个粒子。 stiffness:Number (default = 0.5) —弹簧的强度。有效值在0到1之间。低值的效果就像软弹簧,高值的效果如同硬弹簧。  collidable:Boolean (default = false) — 决定此约束是否接受碰撞检测。 rectHeight:Number (default = 1) —如果这个约束是可接受碰撞检测的,可碰撞的区域的高度可设置为像素值。高度和被链接的两个粒子的连线垂直。  rectScale:Number (default = 1) —如果这个约束是可接受碰撞检测的,可被碰撞的区域的缩放可被设置

46、为一个0到1之间的值。这个缩放是两个被链接的粒子之间的距离的一个百分数。  scaleToLength:Boolean (default = false) —如果这个约束是可接受碰撞检测的并且这个值设为true时,可接受碰撞的区域将随着两个粒子的距离而缩放。 方法 init ()方法 public override function init():void 建立弹簧约束的视觉呈现。当此弹簧约束的父组的实例被加到APEngine中、此弹簧约束的复合体被加到组中、次弹簧约束被加到复合体或组中的时候,这个方法会自动的被调用。 isConnectedTo () 方法  public fu

47、nction isConnectedTo(p:AbstractParticle):Boolean 如果传递给此函数的参数是被链接的两个粒子之一则返回true。 参数 p:AbstractParticle  返回 Boolean paint () 方法  public override function paint():void 这个约束的默认渲染方法。这个方法由APEngine.paint()自动的调用。如果你想要自定义渲染方法,你可以创建一个这个类的子类,并在子类中覆盖paint()方法。 setCollidable ()方法  public function setColl

48、idable(b:Boolean, rectHeight:Number, rectScale:Number, scaleToLength:Boolean = false):void 参数: b:Boolean  rectHeight:Number  rectScale:Number  scaleToLength:Boolean (default = false) setDisplay ()方法 public function setDisplay(d:DisplayObject, offsetX:Number = 0, offsetY:Number = 0, rota

49、tion:Number = 0):void 当渲染这个约束时分配一个显示对象以备使用。 参数 d:DisplayObject  offsetX:Number (default = 0)  offsetY:Number (default = 0)  rotation:Number (default = 0) ———————————————————————————————————————————————————————————————————— Vector类 属性 x 属性  public var x:Number y 属性  public var y:Nu

50、mber 构造函数 Vector () constructor  public function Vector(px:Number = 0, py:Number = 0) 参数: px:Number (default = 0)  py:Number (default = 0) 方法 copy () 方法 public function copy(v:Vector):void 参数: v:Vector cross () 方法  public function cross(v:Vector):Number 参数 v:Vector  返回: Number

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服