- 浏览: 466574 次
- 性别:
- 来自: 济南
文章分类
- 全部博客 (470)
- 前言 (1)
- 【sys】centos6.2 (51)
- 【sys】shell (8)
- 【sys】yum (1)
- software (6)
- 【tec】ruby (16)
- 【tec】rails (35)
- 【tec】rails路由 (2)
- 【tec】rails部署 (10)
- 【tec】rails优化 (6)
- 【tec】rails测试 (11)
- 【tec】php (45)
- 【tec】android (1)
- 【tec】ios (125)
- 【data】mysql (11)
- web (6)
- 【life】文学与提升 (2)
- life (36)
- 【life】怀念 (1)
- 【web】nginx (5)
- 【web】网络与安全 (4)
- 工作随笔 (1)
- 【software】svn (5)
- 【script】jquery (10)
- powerEdge (2)
- 杂七杂八 (5)
- 【sys】ubuntu (9)
- 【sys】windows (4)
- 【tec】java (1)
- 【tec】html (3)
- 【tec】c++ (38)
- 【tec】汇编 (1)
- 【data】数据库 (1)
- 【exchange 】学术交流 (1)
- 【tec】域名空间 (1)
- 【tec】编程先知 (1)
- 【tec】网站建设 (7)
- 【sys】mac (24)
- 【sys】seo (1)
- 【tec】wp (1)
- 【software】git (4)
最新评论
-
fireDragonpzy:
呵呵 貌似我网站上的有更新 你从那里看看 这个博客维护的不及时 ...
牛人经典语录 -
Peppermintchz:
还真这么2过啊!!好怀念啊
牛人经典语录 -
fireDragonpzy:
chenhong53 写道你好,我想问一下,能不能给一组精灵数 ...
cocos2d-x事件触发的优先级 -
chenhong53:
你好,我想问一下,能不能给一组精灵数组中的精灵添加触屏优先级, ...
cocos2d-x事件触发的优先级 -
fireDragonpzy:
dreamstar1020 写道谢谢庞兄指点,写的很详细,谢谢 ...
致:上海郑兄(虚拟主机-web服务器搭建)
本文为firedragonpzy原创,转载务必在明显处注明:
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/589
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/589
之前在博文http://firedragonpzy.iteye.com/blog/1585168写到了判断点击的是哪个精灵,代码和下面差不多,可参考下面代码: CCRect MonsterSprite::atlasRect() { CCSize temp_size = this->getContentSize(); return CCRectMake( -temp_size.width/2, -temp_size.height/2, temp_size.width, temp_size.height ); } bool MonsterSprite::containsTouchLocation( CCTouch *pTouch ) { CCPoint p = this->convertTouchToNodeSpaceAR( pTouch ); CCLOG("%f", p.x); CCLOG("%f", p.y); return CCRect::CCRectContainsPoint( atlasRect(), this->convertTouchToNodeSpaceAR( pTouch ) ); } 最近,使用这代码时做缩放遇到了些许问题,缩放后,点击出现区域偏差,其中,temp_size感觉应该这么定义CCSize temp_size = this->boundingBox().size;,以为得缩放啊,还有另外一种定义法就是CCSize temp_size = this->getTexture()->getContentSize();一共这三种方法,但是建议使用第一种。 关于第二种,我把这个精灵点击事件的判断放在了精灵的内部,执行方法的时候肯定已经缩放了,要是再缩放,导致区域变小。 关于第三种,要是使用的纹理,plist,它获得的是存放精灵的纹理(plist)的大小,而不是精灵本身的大小,这样导致区域变大。 这样后就又带来疑惑了,我使用第一种,atlasRect()缩放了精灵,但是后面将点击点转换为相对于节点的坐标没有缩放啊,其实,方法内部已经实现了点像素的转换,接下来看看convertTouchToNodeSpaceAR的源码: CCPoint CCNode::convertTouchToNodeSpaceAR(CCTouch *touch) { CCPoint point = touch->locationInView(touch->view()); point = CCDirector::sharedDirector()->convertToGL(point); return this->convertToNodeSpaceAR(point); } 再看看convertToNodeSpaceAR的源码: CCPoint CCNode::convertToNodeSpaceAR(const CCPoint& worldPoint) { CCPoint nodePoint = convertToNodeSpace(worldPoint); CCPoint anchorInPoints; if( CC_CONTENT_SCALE_FACTOR() == 1 ) { anchorInPoints = m_tAnchorPointInPixels; } else { anchorInPoints = ccpMult( m_tAnchorPointInPixels, 1/CC_CONTENT_SCALE_FACTOR() ); } return ccpSub(nodePoint, anchorInPoints); }这下子,你明白了吧…… 呵呵,好了,今天就到这里啦……
发表评论
-
cocos2d-x CCClippingNode遮罩实现手电筒效果
2013-07-09 20:14 2257详情请参考:【Software Myzone】:http:// ... -
Cocos2d: Stencil buffer is not enabled.
2013-07-05 10:47 1639详情请参考:【Software Myzone】:http:// ... -
[2.1.3]修改SearchPaths的三种方式【熊猫版】
2013-06-24 09:44 887详情请参考:【Software Myzone】:http:// ... -
深入理解 Cocos2d-x 内存管理 转
2013-06-24 09:43 813详情请参考:【Software Myzone】:http:// ... -
cocos2d-x场景缩放后的区域碰撞检测
2013-06-24 09:31 1432详情请参考:【Software Myzone】:http:// ... -
编译CSArmature到Android
2013-05-29 09:09 787详情请参考:【Software Myzone】:http:// ... -
TexturePacker 图片加密 转
2013-05-29 09:09 898详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x 屏幕适配新解 转
2013-05-28 13:21 912详情请参考:【Software Myzone】:http:// ... -
cocos2d-x 使用TinyXML2存储数据:FDTinyXML2
2013-05-09 14:31 1077详情请参考:【Software Myzone】:http:// ... -
TinyXML2 学习
2013-05-09 14:31 811详情请参考:【Software Myzone】:http:// ... -
cocos2d-x 精灵的移动遮罩[手电筒效果]
2013-05-02 09:41 1108详情请参考:【Software Myzone】:http:// ... -
Android平台中进程与线程的基本知识
2013-05-02 09:41 745详情请参考:【Software Myzone】:http:// ... -
Jumper类游戏制作【Forest Run】
2013-04-24 16:20 572详情请参考:【Software Myzone】:http:// ... -
Cocos2D 如何做 Android 适配 转
2013-04-22 16:48 666详情请参考:【Software Myzone】:http:// ... -
类似Temple Run 游戏恢复的321倒计时实现
2013-04-22 16:47 1056详情请参考:【Software Myzone】:http:// ... -
工具库:UtilTools
2013-04-22 16:47 710详情请参考:【Software Myzone】:http:// ... -
C++的深拷贝与浅拷贝
2013-04-03 10:23 798详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x Win32下的节点缩放原理研究心得【熊猫版】
2013-04-03 10:23 901详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x 节点绘制流程研究心得【熊猫版】
2013-04-03 10:22 807详情请参考:【Software Myzone】:http:// ... -
基于cocos2d-x的游戏客户端优化
2013-04-03 10:22 753详情请参考:【Software Myzone】:http:// ...
相关推荐
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
产业园区行业专题研究:详解供给增加挑战,共享产业集聚红利.docx
Linux开源网络全栈详解:从DPDK到OpenFlow - 英特尔亚太研发有限公司(2019)
《Linux设备驱动开发详解:基于最新的Linux4.0内核配套光盘》一书由宋保华编写,针对Linux4.0内核进行了深入浅出的解析与实践指导。本书结合了理论与实践,旨在帮助读者掌握Linux设备驱动程序的设计与开发技能。 ##...
断点回归RDD用stata软件操作详解:方法步骤、数据、命令、程序do文件 更详 细的内容,请参考下面的截图说明! 断点回归RD设计用stata软件操作详解:方法 步骤、数据、命令、程序do文件 断点回归RD设计用stata软件...
【课程大纲】第1讲-Spark的前世今生 共12页第2讲-课程介绍、特色与价值 共13页第3讲-Scala编程详解:基础语法 共8页第4讲-Scala编程详解:条件控制与循环 共7页第5讲-Scala编程详解:函数入门 共5页第6讲-Scala编程...
docker:Docker技术详解及其特点; docker:Docker技术详解及其特点; docker:Docker技术详解及其特点; docker:Docker技术详解及其特点; docker:Docker技术详解及其特点; docker:Docker技术详解及其特点; ...
《CAD应用程序开发详解:Visual C++与OpenGL综合应用》随书光盘
全面详解LTE:MATLAB建模、仿真与实现-simulink.rar 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2020b;若运行有误,根据提示GPT修改;若不会,...
《TCP-IP详解卷一:协议》是一本专注于TCP/IP协议体系结构的权威书籍,由权威的计算机网络专家撰写,涵盖了互联网中使用的广泛协议。该书深入讲解了TCP/IP协议族中关键的协议和概念,成为学习计算机网络专业人员的...
《Linux设备驱动开发详解-基于最新的Linux4.0内核》是一本深入讲解Linux设备驱动程序开发的专业书籍,源码.zip文件包含了与书中的讲解密切相关的代码示例。Linux驱动开发是连接硬件与操作系统内核的重要桥梁,对于...
Android多媒体应用开发实战详解:图像、音频、视频、2D和3D
20210528-中信证券-科大讯飞-002230-深度跟踪报告:详解区域因材施教模式.pdf
《Linux设备驱动开发详解——基于最新的Linux4.0内核》是一本专注于嵌入式Linux系统中的设备驱动程序开发的专业书籍。这本书的核心内容是讲解如何为Linux操作系统编写和理解设备驱动,以实现硬件与操作系统之间的...