我在python中有一个2D表示一个平铺贴图,数组中的每个元素都是1或0,0表示陆地,1表示水。我需要一个算法,取2个随机坐标作为圆心,一个半径(最大5)的变量,并替换数组中必要的元素来形成一个完整的圆。在
x = random.randint(0,MAPWIDTH)
y = random.randint(0,MAPHEIGHT)
rad = random.randint(0,5)
tileMap[x][y] = 1 #this creates the center of the circle
我该怎么做?在
Tags:
如前所述,可以使用圆的定义,如下所示:
这个输出
^{pr2}$请注意,我故意使用了一个相当大的数组和半径-这使得实际上能够更好地看到圆。对于半径为5的区域,它可能会被像素化。在
你必须将坐标设置为1如果
((x – h)(x - h)) + ((y – k)(y - k)) = r * r
为真。h
是中心x坐标,k
是中心y坐标。在灵感来自Izak van Dongen,只是重新设计了一点:
相关问题 更多 >
编程相关推荐