cocos2dx 3.3将坐标由父空间转化到局部空间

设在node的父空间内有一点p,要求其转化到node局部空间后的坐标p_local,代码如下:

node->getNodeToParentTransform();//in order node->parentToNodeTransform() got right result, we must call node->getNodeToParentTransform() first, this is a bug of cocos2dx 3.3, see:http://www.cnblogs.com/wantnon/p/4330226.html

CCAffineTransform parentToNodeTransform=node->parentToNodeTransform();

p_local=CCPointApplyAffineTransform(p,parentToNodeTransform);

注意,不应该用 p_local=node->convertToNodeSpace(p),这是错的,因为看convertToNodeSpace的实现可知,它其实是convertFromWorldSpaceToNodeSpace,而不是convertFromFatherSpaceToNodeSpace。

时间: 2024-09-30 14:39:21

cocos2dx 3.3将坐标由父空间转化到局部空间的相关文章

Android中如何将子View的坐标转换为父View的坐标

最近打算照着Android的Launcher2源码写一个精简的带有拖动功能的Launcher.在分析DragLayer类的时候发现了一个有趣方法——getDescendantCoordRelativeToSelf.通过一下两篇文章的介绍和自己的实验,总算是弄清楚了该方法的原理. http://blog.csdn.net/hahajluzxb/article/details/8165258 http://www.cnblogs.com/platte/p/3534279.html 下面主要分析一下代

unity, 相机空间 与 相机gameObject的局部空间

在unity里 相机空间 与 相机gameObject的局部空间 不重合. Camera.worldToCameraMatrix的文档中有这样一句话: Note that camera space matches OpenGL convention: camera's forward is the negative Z axis. This is different from Unity's convention, where forward is the positive Z axis. 意思

3dmax 物体的真正局部空间原点

假设在3dmax中创建一个 长x宽x高=1cm x 1cm x 1cm 的单位立方体,则默认局部坐标系原点在底面中心,进入 “层次”面板->轴->调整轴,按下“仅影响轴”,再点“居中到对象”,可以将局部坐标系原点对齐到立方体中心,不过当我们将立方体导出为fbx,并通过fbx sdk从中提取出顶点数据查看会发现局部空间顶点坐标并不是关于(0,0,0)对称分布的,即局部坐标原点并不是在立方体中心,而是仍然跟未调整轴之前一样,局部坐标原点在立方体底面中心.经进一步实验证实,调整轴并不会影响物体顶点的

白话空间统计之:空间自相关

白话空间统计之:空间自相关 空间自相关,肯定是空间统计里面第一个拦路虎了,很多人遇上了这个高大上的词汇,立刻就发现,这五个字我好像都认识,但是到底说了啥?不知道. 如果翻开各种教材,从统计学到数学到物理学,各种解释都摆出了一副"老子就是高大上学霸,屌丝学渣勿扰"的样子,这个东西真得就那么难么?虾神我就不信了,所以:I have a dream,就是写出一个最接地气的空间统计解释来.(好大的宏愿,阿弥陀佛老天保佑,别吹炸了.) 首先,要明白一下空间自相关这个神奇的概念,不得不先说一个神奇

mysql共享表空间和独立表空间

innodb表的数据结构 innodb这种引擎,与MYISAM引擎的区别很大.特别是它的数据存储格式等. 对于innodb的数据结构,首先要解决两个概念性的问题: 共享表空间以及独占表空间. 什么是共享表空间和独占表空间 共享表空间以及独占表空间都是针对数据的存储方式而言的. 共享表空间:  某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在data目录下. 默认的文件名为:ibdata1  初始化为10M. 独占表空间:  每一个表都将会生成以独立的文件方式

表空间及组成表空间的物理文件

相关文件: fil0fil.h fil0fil.c 功能:对disk上的表空间及组成表空间的物理文件进行管理(如新建,打开,关闭,删除,重命名等操作):对表空间中的页在物理文件上进行存取(IO操作). Introduction 表空间的物理组成 Innodb在对数据库文件的管理上使用了类似oracle的表空间(tablespace)技术.表空间只是逻辑上的管理方法,数据库的存储在物理上仍是按文件进行.在innodb中有三种表空间:系统表空间(也被称为共享表空间),重做日志表空间和独立表空间.这三

sed模式空间和暂存空间的区别

学了sed,觉得模式空间和暂存空间比较乱 整理一下 sed编辑器逐行处理文件,并将输出结果打印到屏幕上.sed命令将当前处理的行读入模式空间(pattern  space)进行处理,sed在该行上执行完所有命令后就将处理好的行打印到屏幕上(除非之前的命令删除了该行),sed处理完一行就将其从模式空间中删除,然后将下一行读入模式空间,进行处理.显示.处理完文件的最后一行,sed便结束运行.sed在临时缓冲区(模式空间)对文件进行处理,所以不会修改原文件,除非显示指明-i选项. 与模式空间和暂存空间

18_Oracle_Admin_只读表空间和离线表空间

一.只读表空间 只读的表空间只能进行select操作,设定只读表空间的命令为: ALTER TABLESPACE userdata READ ONLY; 设定只读表空间会触发checkpoint,将缓存中的数据写入data file:但是尽管设定了只读属性,依然可以对这个表空间进行drop操作(比如drop table),因为drop操作并没有改变表空间的结构,只是更改了数据字典里的值,而数据字典是存储在SYSTEM TABLESPACE里的,SYSTEM TABLESPACE是不可以设定为RE

MySQL InnoDB 共享表空间和独立表空间

共享表空间 某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在data目录下. 默认的文件名为ibdata1, 初始化为10M. 由于是默认的方式,就暂且理解为Mysql官方推荐的方式.相对而言所有的数据都在一个(或几个)文件中,比较利于管理,而且在操作的时候只需要open这一个(或几个)文件即可,相对来说代价很低.但问题是在数据达到以G为单位来计算的时候优劣逆转.一个过大的文件很不利于管理,而且对于一个如此巨大的文件来说,读写它需要耗费的资源一样巨大.更加令