zl程序教程

您现在的位置是:首页 >  前端

当前栏目

javascript选中精灵旋转缩放 移动操作详解编程语言

JavaScript编程语言 详解 操作 移动 选中 旋转 缩放
2023-06-13 09:11:50 时间

所以统一给屏幕添加事件

判断点中哪个精灵需要 遍历每个精灵 判断是否与触摸 碰撞  碰撞就是触发哪个精灵处理

还有就是 单点触摸和多点触摸逻辑一定更要分离

就是1个手指第一次点击 算单点(2个手机送开1个手指就不能算进去 不然逻辑会乱) 所以这个地方要写判断是否全部松开的点击 为单点

bool HelloWorld::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent) 

 int tag ; 

 for (tag = 1;tag =TagCount;tag++) 

 CCSprite* sprite= (CCSprite*)this- getChildByTag(tag); 

 CCPoint touchPoint = pTouch- getLocationInView(); 

 touchPoint = CCDirector::sharedDirector()- convertToGL( touchPoint ); 

 CCRect rc1 = sprite- boundingBox(); 

 if (rc1.containsPoint(touchPoint)) 

 pSprite = sprite; 

 return true; 

 return false; 

void HelloWorld::ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent) 

 CCPoint beginPoint=pTouch- getLocationInView(); 

 beginPoint=CCDirector::sharedDirector()- convertToGL(beginPoint); 

 CCPoint endPoint=pTouch- getPreviousLocationInView(); 

 endPoint=CCDirector::sharedDirector()- convertToGL(endPoint); 

 CCPoint offSet =ccpSub(beginPoint,endPoint); 

 CCPoint toPoint=ccpAdd(pSprite- getPosition(),offSet); 

 pSprite- setPosition(toPoint); 

}

然后结合如下 缩放旋转

http://developer.egret.com/cn/example/egret2d/index.html#060-interact-multi-point

IT虾米网

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/18781.html

cjava