网站大量收购独家精品文档,联系QQ:2885784924

Chipmunk Lua API【DOC精选】.docx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Chipmunk Lua API Version 1.0 2011-11-28 Beijing elooMobile Co., Ltd Revision History No. Date Description Revised by 1 2011-11-28 整理 Shenjf 2 3 目录 1. 引言 3 2. 一级标题 3 2.1. 二级标题 3 2.1.1. 三级标题 3 3. 一级标题 3 3.1. 二级标题 3 3.1.1. 三级标题 3 (注:对于目录是自动生成的,每次更新文档内容后,在目录区右键更新域就可以了,如果大家的目录发现内容比较乱时,可以选择在 视图〉大纲,编辑一下各个标题的级别或者正文,这样目录就会比较整齐了) 1. 引言 本文档说明Chipmunk在Gearbox编程中的Lua 接口。对这些的接口的详细介绍请参考Chipmunk提供的文档,用法和含义完全一样,为了保持一致,本文档中的参数均采用了C 语言的数据类型。实际使用时使用Lua的数据类型即可。 int\float\cpfloat等数字类型直接使用Lua数字,其中float类型可以直接用1而不必须是1.0。 cpvect 使用形如{x=0,y=0}的lua table。 各种instance为调用Chipmunk接口获取的object。比如ChipmunkSpace.New()得到一个space object的Instance。 各种回调函数为字符串,比如SpaceInstance:EachConstraint(string cpSCIFunc, table data)在Chipmunk的文档中的cpSCIFunc是cpSpaceConstraintIteratorFunc类型,在Lua接口中统一为string类型。 2. 基本数据类型 2.1. cpVect原型 在Lua中使用cpVect对象可以直接使用形如{x=0,y=0}的table,而不需要调用cpVect的构造函数,因此不支持cpv()和cpvzero()。 2.1.1. cpVect 数据操作 支持chipmunk中cpVect所有操作函数,在Lua中调用时加上Chipmunk.,形如Chipmunk.cpvadd({x=0,y=0},{x=10,y=10})。 这些函数原型如下: ?cpBool cpveql(const cpVect v1, const cpVect v2) – Check if two vectors are equal. Chipmunk provides an overloaded == operator when used in C++ programs. (Be careful when comparing floating point numbers!) ?cpVect cpvadd(const cpVect v1, const cpVect v2) – Add two vectors. Chipmunk provides an overloaded + operator when used in C++ programs. ?cpVect cpvsub(const cpVect v1, const cpVect v2) – Subtract two vectors. Chipmunk provides an overloaded - operator when used in C++ programs. ?cpVect cpvneg(const cpVect v) – Negate a vector. Chipmunk provides an overloaded unary negation operator - when used in C++ programs. ?cpVect cpvmult(const cpVect v, const cpFloat s) – Scalar multiplication. Chipmunk provides an overloaded * operator when used in C++ programs. ?cpFloat cpvdot(const cpVect v1, const cpVect v2) – Vector dot product. ?cpFloat cpvcross(const cpVect v1, const cpVect v2) – 2D vector cross product analog. The cross product of 2D vectors results in a 3D vector with only a z component. This func

文档评论(0)

taotao0b + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档