def unittest_methods(): import_pymt_no_window() from pymt import Vector a = Vector(0, 10) test(a.length() == 10) b = Vector(0, 20) test(b.distance(a) == 10)
def draw(self): t = getClock().get_time() touches = getCurrentTouches() # draw closed touches to_delete = [] ids = [touch.id for touch in touches] for id in self.closetouches: if not id in ids: to_delete.append(id) continue touch = self.closetouches[id] value = ((t - touch.time_start) - 1) / 2. if value > 1: self.do_close() return set_color(1, 1, 1, .7) drawSemiCircle(pos=(touch.x, touch.y), inner_radius=30, outer_radius=50, slices=64, sweep_angle=value * 360) # delete old touches for id in to_delete: del self.closetouches[id] # search for touch in touches: if 'closeapp.invalid_for_close' in touch.userdata: continue # distance < 20 if Vector(touch.osxpos, touch.osypos).distance( Vector(touch.sx, touch.sy)) > 0.015: # flag touch.userdata['closeapp.invalid_for_close'] = True if touch.id in self.closetouches: del self.closetouches[touch.id] return # 1s minimum if t - touch.time_start < 1: if touch.id in self.closetouches: del self.closetouches[touch.id] return # check corner screen if touch.sx < .75 or touch.sy < .75: if touch.id in self.closetouches: del self.closetouches[touch.id] return # add touches to closed touches self.closetouches[touch.id] = touch
def unittest_basics(): import_pymt_no_window() from pymt import Vector v = Vector(10, 10) test(v.x == 10) test(v.y == 10) a = Vector(1, 1) b = Vector(2, 2) test(a != b) # add c = a + b test(c.x == 3) test(c.y == 3) test(c[0] == 3) test(c[1] == 3) # sub c = a - b test(c.x == -1) test(c.y == -1) # mul c = b * 2 test(c.x == 4) test(c.y == 4) # add with tuple c = b + (5, 6) test(c.x == 7) test(c.y == 8) # add with list c = b + [5, 6] test(c.x == 7) test(c.y == 8)