def test_AABox_contains(self): true_tests = [ ((0,0,1,1), (0,0)), ((0,0,1,1), (1,0)), ((0,0,1,1), (1,1)), ((0,0,1,1), (0,1)), ((-10,-10,100,20), (0,0)), ] false_tests = [ ((0,0,1,1), (-1,0)), ((0,0,1,1), (-1,-1)), ((0,0,1,1), (0.5,-1)), ((0,0,1,1), (-1,0.5)), ((0,0,1,1), (0,-1)), ((-10,-10,100,20), (-100,-100)), ] for dimensions, point in true_tests: box = AABox(*dimensions) self.assertTrue(box.contains(*point)) self.assertTrue(box.contains_point(Vector(*point))) for dimensions, point in false_tests: box = AABox(*dimensions) self.assertFalse(box.contains(*point)) self.assertFalse(box.contains_point(Vector(*point)))
def on_mouse_pressed(self, x, y, buttons, modifiers): # Make a rectangle of the absolute position of our marker rectangle = AABox() rectangle.position = self.marker.absolute_position rectangle.size = self.marker.size if rectangle.contains_point(Vector(x, y)): logging.debug('Slider Actively Dragging') self.actively_dragging = True