45度的坐标转换成屏幕坐标
2011-07-05 01:45
465 查看
//斜45度的坐标转换成屏幕坐标
inline void MIToMD(int Dx,int Dy,int &Ix,int
&Iy)
{
Ix=(TileWidth>>1)*(Dx-Dy);//转换为绝对坐标x
Iy=(TileHeight>>1)*(Dx+Dy);//转换为绝对坐标y 大菱形
}
//屏幕坐标转换成斜45度的坐标
inline void MDToMI(int Ix,int Iy,int &Dx,int
&Dy)
{
Dx=int(0.5*((Iy<<1)+Ix)/(TileWidth>>1));
Dy=int(0.5*((Iy<<1)-Ix)/(TileWidth>>1));
}
其中
#define TileWidth 32 //每个Tile的宽
#define TileHeight 16
//每个Tile的高
inline void MIToMD(int Dx,int Dy,int &Ix,int
&Iy)
{
Ix=(TileWidth>>1)*(Dx-Dy);//转换为绝对坐标x
Iy=(TileHeight>>1)*(Dx+Dy);//转换为绝对坐标y 大菱形
}
//屏幕坐标转换成斜45度的坐标
inline void MDToMI(int Ix,int Iy,int &Dx,int
&Dy)
{
Dx=int(0.5*((Iy<<1)+Ix)/(TileWidth>>1));
Dy=int(0.5*((Iy<<1)-Ix)/(TileWidth>>1));
}
其中
#define TileWidth 32 //每个Tile的宽
#define TileHeight 16
//每个Tile的高
相关文章推荐
- 如何通过界面屏幕的UI坐标,转换成45度叫的地图坐标?
- 地理坐标、经纬度坐标与屏幕坐标的转换!
- VC:客户坐标(client coordinates)和屏幕坐标(screen coordinates)的转换
- 两种屏幕-世界坐标转换的性能比较
- ClientToScreen这个函数的功能:该函数将指定点,或者矩形的用户坐标转换成屏幕坐标。
- 地图坐标与屏幕坐标的转换
- 经纬度转换为屏幕坐标
- 地理(投影)坐标与屏幕坐标的转换!
- GDI+ 相对form窗口的坐标和相对于显示器的屏幕坐标的转换
- unity 屏幕坐标&世界坐标相互转换
- opengl中将三维坐标转换到屏幕坐标
- 经纬度坐标转换为屏幕坐标
- ogre世界坐标与屏幕坐标相互转换
- 【OPEN GL】学习笔记之一:顶点坐标到屏幕坐标之间的转换
- Unity3D将屏幕坐标上的点转换为世界坐标中的点
- 【ArcGIS for Android】经纬度坐标、地图投影坐标、屏幕坐标互相转换
- 地理(投影)坐标与屏幕坐标的转换公式
- 2算法:客户区坐标转换成屏幕坐标
- 百度地图 经纬度转换屏幕屏幕坐标
- 屏幕坐标向OpenGL坐标的转换(完整版)