在cocos2d中,坐标系非常简单..左下角是(0,0)。每当我设置好任何东西的位置。Cocos2d坐标系
可以说一层是TouchEnabled。
时,即时通讯设定我的精灵的位置,这是很好..
[crab setPosition:ccp(20, 50)];
,但如果我得到的x和触摸的y坐标(并假设我点击了精灵..):
- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
NSLog(@"Touches began!");
NSArray *touchArray = [touches allObjects];
UITouch *one = [touchArray objectAtIndex:0];
pointOne = [one locationInView:[one view]];
CCLOG(@"points are: %f and %f", pointOne.x, pointOne.y);
}
y坐标与cocos2d的坐标系建议相反,y从上到下增加!
所以即时假设视图的坐标系统是不同于mac的coord系统..这是相当直观的..是否正确?
谢谢!
convertToNodeSpace将不在当前节点坐标系中的点转换为自身。例如世界坐标(但仍然以openGL格式)到节点坐标系。 –
通过添加converttogl方法更新我的答案 – lukaswelte
这仍然不正确。转换为节点空间不适用于uikit点 –