中心的平铺坐标TiledMap

时间:2013-12-02 17:35:39

标签: objective-c cocos2d-iphone

cocos2d :您能告诉我如何在屏幕上找到瓷砖中间的坐标吗?即不是瓷砖的坐标(1,1或1,8)和其中心直线的坐标 如果有的话,瓷砖的坐标让我想象

- (CGPoint) tileCoordForPosition: (CGPoint) position {
     int x = position.x / _tileMap.tileSize.width;
     int y = ((_tileMap.mapSize.height * _tileMap.tileSize.height) - position.y) / _tileMap.tileSize.height;
     return ccp (x, y);
}

1 个答案:

答案 0 :(得分:0)

每个CCTMXTiledMap都有一个CCTMXLayer,你可以使用一个方法tileAt http://www.cocos2d-iphone.org/api-ref/0.99.5/interface_c_c_t_m_x_layer.html#a91a1765d9698222d8401b523f9064168,你可以在其中传递坐标tile坐标(1,8),然后返回CCSprite。

使用该CCSprite,您可以获得其与任何其他CCNode派生对象一样的位置。如果你有任何时髦的分层内容,你可能需要使用

[thatSprite convertToWorldSpace: thatSprite.position]