首页 > 代码库 > cocos2dX改变锚点位置
cocos2dX改变锚点位置
改变锚点时,同过计算偏移量修正position从而保持CCNode在屏幕上的位置不变
1 void CLayer::change_anchorpoint(CCNode* node,CCPoint newpt) 2 { 3 float dx, dy, diffx, diffy, height, width; 4 width = node->getContentSize().width; 5 height = node->getContentSize().height; 6 7 diffx = (newpt.x - node->getAnchorPoint().x)*width; 8 diffy = (newpt.y - node->getAnchorPoint().y)*height; 9 node->setPositionX(node->getPositionX() + diffx);10 node->setPositionY(node->getPositionY() + diffy);11 node->setAnchorPoint(newpt);12 }
newpt为新锚点的位置
cocos2dX改变锚点位置
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。