如题 , cocos2d里边有没有方法。能求 45度角地图上精灵当前 位置所在的地图序列。
小弟是初学者 , 还望大神们不吝赐教!~
在CCTMXLayer这个类里面的positionAt函数可以将地图坐标转换成格子坐标。
— Begin quote from ____
Preate轩 发表于 2012-7-13 16:24 url
在CCTMXLayer这个类里面的positionAt函数可以将地图坐标转换成格子坐标。
— End quote
函数的作用说反了吧
— Begin quote from ____
gexiu 发表于 2012-7-14 10:41 url
函数的作用说反了吧
— End quote
哈哈 是的 。。。。 谢谢纠正
//将地图坐标转换成格子坐标
CCPoint BattleField::mapPosToTilePos(float x,float y)
{
int map_width = _tmxMap->getMapSize().width;
int map_height = _tmxMap->getMapSize().height;
int tile_width = _tmxMap->getTileSize().width;
int tile_height = _tmxMap->getTileSize().height;
float pos_x = map_height + x/tile_width - y/tile_height - map_width/2 - 0.5f;
float pox_y = map_height - x/tile_width - y/tile_height + map_width/2 - 1.5f;
return ccp(pos_x,pox_y);
}
传入地图坐标就能得出格子的坐标 希望对你有帮助。
1赞
— Begin quote from ____
Preate轩 发表于 2012-7-13 16:24 url
在CCTMXLayer这个类里面的positionAt函数可以将地图坐标转换成格子坐标。
— End quote
函数的作用说反了吧