def __init__(self, params):
     self.point_list = ()
     self._logger = LogManager.get_logger("Triangle")
     self._color = params['color']
     self._center_point = params['center_point']
     self._width = params['width']
     self._side = params['side']
     self._head_direction = params['head_direction']
    def __init__(self, game_world, position, radius):
        MovingEntity.__init__(self, position, radius)
        self._steer_behavior = SteeringBehaviors(self)

        self._game_world = game_world
        data = self.get_vehicle_data()
        self.sprite = Triangle(data)

        self._logger = LogManager.get_logger("Vehicle")
    def __init__(self, vehicle):
        self.vehicle = vehicle

        self.pursuit_on = False
        self.pursuer = None

        self.evade_on = False
        self.evader = None

        self.wander_on = False
        self.wander_jitter = 1
        self.wander_radius = 1
        self.wander_distance = 1

        self.obstacle_avoid_on = False
        self._obstacles = []

        self.wall_avoid_on = False
        self._walls = []

        self._logger = LogManager.get_logger("SteeringBehaviors")
    def __init__(self):
        self.obstacle1 = Obstacle(self, Vector2(300, 300), 30)
        self.obstacle2 = Obstacle(self, Vector2(500, 500), 40)
        self.obstacle3 = Obstacle(self, Vector2(600, 400), 20)
        self.obstacle_list = []
        self.obstacle_list.append(self.obstacle1)
        self.obstacle_list.append(self.obstacle2)
        self.obstacle_list.append(self.obstacle3)

        # 创造walls
        self.walls_list = []
        self.wall1 = Wall(Vector2(0, 0), Vector2(1, 0), 800)
        self.wall2 = Wall(Vector2(800, 0), Vector2(0, 1), 600)
        self.wall3 = Wall(Vector2(800, 600), Vector2(-1, 0), 800)
        self.wall4 = Wall(Vector2(0, 600), Vector2(0, -1), 600)
        self.walls_list.append(self.wall1)
        self.walls_list.append(self.wall2)
        self.walls_list.append(self.wall3)
        self.walls_list.append(self.wall4)

        self.vehicle1 = Vehicle(self, Vector2(100, 100), 15)
        self.vehicle2 = Vehicle(self, Vector2(150, 100), 15)
        self.vehicle_list = []
        self.vehicle_list.append(self.vehicle1)
        self.vehicle_list.append(self.vehicle2)

        self.vehicle2.set_color(BLUE)
        self._logger = LogManager.get_logger("GameWorld")

        #self.vehicle1.steer_behavior.set_pursuit_on(self.vehicle2)
        #self.vehicle2.steer_behavior.set_evade_on(self.vehicle1)
        self.vehicle1.steer_behavior.set_wander_on()
        self.vehicle1.steer_behavior.set_obstacle_avoid_on(self.obstacle_list)
        self.vehicle1.steer_behavior.set_wall_avoid_on(self.walls_list)
        self.vehicle2.steer_behavior.set_wander_on()
        self.vehicle2.steer_behavior.set_obstacle_avoid_on(self.obstacle_list)
        self.vehicle2.steer_behavior.set_wall_avoid_on(self.walls_list)