def generate_background(pict, bbxes, min_height, min_width): for i in xrange(N_TRIALS): rand_bbx = Rect(pict.shape[0], pict.shape[1]) intersects = True if rand_bbx.height < min_height or rand_bbx.width < min_width: continue intersects = False for bbx in bbxes: intersects = intersects or rand_bbx.intersects(bbx) if not intersects: break if not intersects: return pict[rand_bbx.ymin:rand_bbx.ymax,rand_bbx.xmin:rand_bbx.xmax] else: return None
def rectOverlaps(self, rect): minX,minY,maxX,maxY = self.getTileBoundsInclusive(rect) tw = self.tileWidth th = self.tileHeight for layer in self.collideLayers: for y in range(minY,maxY+1): for x in range(minX,maxX+1): idx = x + y*layer.width if layer.tileGIDs[idx] != 0: r = Rect(x*tw, y*th, tw,th) if r.intersects(rect): return True return False
def rectOverlaps(self, rect): # player collision test r = Rect(self.x,self.y,32,64) return r.intersects(rect)
def rectOverlaps(self, rect): r = Rect(self.x,self.y,32,64) return r.intersects(rect)
from rect import Rect a_points = [(0, 0), (-1, 0), (-1, -1), (0, -1)] b_points = [(0, 0), (-1, 0), (-1, -1), (0, -1)] a_rect = Rect(0, 0, a_points) b_rect = Rect(1, 0ls , b_points) print a_rect.intersects(b_rect)