示例#1
0
        line2 = Line(
            self.gameobject,
            self.get_coordinates() - v * self.radius,
            self.get_coordinates() - v * self.radius + additional_coordinates)
        line3 = Line(
            self.gameobject,
            self.get_coordinates() - v * self.radius + additional_coordinates,
            self.get_coordinates() + v * self.radius + additional_coordinates)
        line4 = Line(
            self.gameobject,
            self.get_coordinates() + v * self.radius + additional_coordinates,
            self.get_coordinates() + v * self.radius)
        return [
            self, circle2,
            MultilineObject(self.gameobject, self.coordinates,
                            [line1, line2, line3, line4])
        ]


if __name__ == '__main__':
    from objects.game_object.game_object import GameObject
    from physics.coordinates import Coordinates
    from objects.game_object.hitboxes.line import Line

    g = GameObject([])
    g.coordinates = Coordinates(5, 0)
    c = Circle(g, Coordinates(1, 0), 5)
    l = Line(g, Coordinates(2, 0), Coordinates(2, 0))

    print(c.get_intersections(l))
示例#2
0
            return False
        return True

    def future_shape(self, additional_coordinates):
        line1 = self
        line2 = Line(self.gameobject,
                     self.get_coordinates() + self.e,
                     self.get_coordinates() + additional_coordinates + self.e)
        line3 = Line(self.gameobject,
                     self.get_coordinates() + additional_coordinates + self.e,
                     self.get_coordinates() + additional_coordinates)
        line4 = Line(self.gameobject,
                     self.get_coordinates() + additional_coordinates,
                     self.get_coordinates())
        return [
            MultilineObject(self.gameobject, self.get_coordinates(),
                            [line1, line2, line3, line4])
        ]


if __name__ == '__main__':
    from objects.game_object.game_object import GameObject
    from physics.coordinates import Coordinates
    from objects.game_object.hitboxes.rectangle import Rectangle

    g = GameObject([])
    g.coordinates = Coordinates(0, 0)
    l1 = Line(g, Coordinates(1, 1), Coordinates(2, 0))
    c = Coordinates(2, 1)
    print(c.distance(l1))