转自:http://www.cnblogs.com/fjut/archive/2012/04/28/2475693.html

//ccTouchBegan必须实现,否则会报错
bool PicScan::ccTouchBegan(CCTouch* pTouch, CCEvent* event)
{
return true;
} void PicScan::ccTouchMoved(CCTouch *touch, CCEvent *event)
{
//获得触摸点初始坐标
CCPoint beginLoc = touch->locationInView(touch->view());
beginLoc = CCDirector::sharedDirector()->convertToGL(beginLoc); //判断鼠标拖拉的区域是否在图片上
if(CCRect::CCRectContainsPoint(lpSprite->boundingBox(), this->getParent()->convertTouchToNodeSpace(touch)) == true)
{
//固定图片在某个区域
if(lpSprite->getPosition().y > s.height/+)
{
lpSprite->setPosition(ccp(lpSprite->getPosition().x, s.height/+));
} if(lpSprite->getPosition().y < s.height/-)
{
lpSprite->setPosition(ccp(lpSprite->getPosition().x, s.height/-));
}
printf(" ccTouchMoved --------------\n"); //获得前一个触摸点坐标
CCPoint endLoc = touch->previousLocationInView(touch->view());
endLoc = CCDirector::sharedDirector()->convertToGL(endLoc); //计算偏移量
CCPoint offSet = ccpSub(beginLoc, endLoc);
Drag(offSet);
} } void PicScan::Drag(CCPoint offSet)
{
//计算精灵坐标加上移动偏移量、并设置精灵位置
CCPoint pos = ccpAdd(lpSprite->getPosition(), offSet);
lpSprite->setPosition(pos);
//.....<br>}

cocos2d-x 触摸偏移的更多相关文章

  1. cocos2d CCLayer 触摸相关

    要让一个  CCLayer 能够接受触摸输入  需要进行如下设置: [selfsetTouchEnabled:YES]; cocos2d-x提供了两种触摸事件处理机制, 分别是CCStandardTo ...

  2. cocos2d-x学习日志(10) --射击游戏(喵星战争)

    转载请标明:转载自[小枫栏目],博文链接:http://blog.csdn.net/rexuefengye/article/details/10553487 一.纵版射击游戏的特点 纵版射击游戏是一种 ...

  3. cocos2d-x 手势之简单实现

    转自:http://blog.sina.com.cn/s/blog_61ece099010187tl.html 手势之前也发过一篇,但是我感觉那个还不够轻巧. 而且大多数游戏里面不会有那么复杂的手势, ...

  4. HTCVive使用

    1.设备的安装与配置 https://wenku.baidu.com/view/fa172fd7482fb4daa48d4b44.html?from=search 2.接入SDK.实现简单示例场景.更 ...

  5. 关于Unity中的Input输入事件

    截获鼠标,键盘的消息 监听事件我们都是在Update里面监听的. Unity的虚拟轴打开:Edit-->Project Settings-->Input,打开的各个Name就是双引号里面要 ...

  6. 【Cocos2d入门教程六】Cocos2d-x事件篇之触摸

    Cocos游戏当中产生一个事件时,可以有多个对象在监听该事件,所以有优先级(Priority).优先级越高(Priority值越小),事件响应越靠前. 关系图: 新 事件分发机制:在2.x 版本事件处 ...

  7. cocos2d触摸事件处理机制(2.x和3.x变化)

    2.x的触摸事件的版本号 触摸事件处理有2种子.以下单点触摸的样本.(另一种多点触摸屏). 创建cocos2d 该项目. 1. 重写下面虚函数. bool ccTouchBegan(cocos2d:: ...

  8. Cocos2D v3.x中关于重叠触摸层优先级的问题

    在Cocos2D v2.x版本中可以通过以下方法设置本层的触摸优先级: [[CCDirector sharedDirector].touchDispatcher addTargetedDelegate ...

  9. [cocos2d] 谁摸了我一下----触摸事件处理

    1. 设置接受触摸事件,可在init方法里面写上 [self setTouchEnabled: YES]; 旧版为self.isTouchEnabled = YES; xcode会报Deprecati ...

随机推荐

  1. Android init进程概述

    init进程,其程序位于根文件系统中,在kernle自行启动后,其中的 start_kernel 函数把根文件系统挂载到/目录后,在 rest_init 函数中通过 kernel_thread(ker ...

  2. 1471. Tree(LCA)

    1471 先学习了下tarjan算法的LCA 离线算法 它是先知道询问的结点对 在遍历的时候就已经算出来了 看篇图解 讲的很清楚 #include <iostream> #include& ...

  3. 详解js中的寄生组合式继承

    寄生组合式继承是js中最理想的继承方式, 最大限度的节省了内存空间. js中的寄生组合式继承要求是: 1.子对象有父对象属性的副本, 且这些不应该保存在子对象的prototype上.       2. ...

  4. poj 3253 Fence Repair (哈夫曼树 优先队列)

    题目:http://poj.org/problem?id=3253 没用long long wrong 了一次 #include <iostream> #include<cstdio ...

  5. js标点符号全局匹配

    var modelCode = node.modelCode.replace(/\./g, '\_'); 注意后面的  "\" <script language=" ...

  6. APIO2010特别行动队(单调队列、斜率优化)

    其实这题一看知道应该是DP,再一看数据范围肯定就是单调队列了. 不过我还不太懂神马单调队列.斜率优化…… 附上天牛的题解:http://www.cnblogs.com/neverforget/arch ...

  7. OK335xS davinci mdio driver hacking

    /******************************************************************************* * OK335xS davinci m ...

  8. hdu 3033 I love sneakers!

    I love sneakers! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  9. MD5加密帮助类

    using System; using System.Collections.Generic; using System.Text; namespace AIMSCommon { /// <su ...

  10. mycat分布式mysql中间件(数据库切分概述)[转]

    mysql数据库切分 前言 通 过MySQLReplication功能所实现的扩展总是会受到数据库大小的限制,一旦数据库过于庞大,尤其是当写入过于频繁,很难由一台主机支撑的时 候,我们还是会面临到扩展 ...