Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从正方形网格计算坐标到像素_Python_Pygame_Coordinates_Pixel - Fatal编程技术网

Python 从正方形网格计算坐标到像素

Python 从正方形网格计算坐标到像素,python,pygame,coordinates,pixel,Python,Pygame,Coordinates,Pixel,我正在尝试将方格坐标计算为像素坐标,但由于我不能真正理解这一点,我想我可能需要一些帮助。我必须将六边形网格转换为方形网格,类似这样: 我以前使用的网格是: 我有函数中的代码,该函数将六边形网格坐标计算为像素: def hex_to_pix(t): x = t[1] * dx + (t[0] % 2) * dxh + dxh y = t[0] * dy + hh / 2 return (x, y) 这个代码已经给出了。函数接收一个元组,然后计算x和y并返回一个元组。对每个栅

我正在尝试将方格坐标计算为像素坐标,但由于我不能真正理解这一点,我想我可能需要一些帮助。我必须将六边形网格转换为方形网格,类似这样:

我以前使用的网格是:

我有函数中的代码,该函数将六边形网格坐标计算为像素:

def hex_to_pix(t):
   x = t[1] * dx + (t[0] % 2) * dxh + dxh
   y = t[0] * dy + hh / 2
   return (x, y)

这个代码已经给出了。函数接收一个元组,然后计算x和y并返回一个元组。对每个栅格坐标调用此函数。dx是两个相邻六边形之间的水平距离,dxh是该距离的一半,dy是两个相邻六边形之间的垂直距离,hh是六边形的高度。如何将此函数转换为从方形网格计算的函数?

方形网格中角点的坐标只是单元格的索引乘以单元格的大小。下面,
dx
dy
是单元格的大小,
t
是包含行和列的元组:

def squre_to_pix(t):
x=t[1]*dx
y=t[0]*dy
返回(x,y)