math.py (1171B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\utility\math.py 2 try: 3 import geo2 4 except ImportError: 5 geo2 = object() 6 7 def compute_forward_fleet_position(friendlyCoordinate, hostileCoordinate, distance): 8 return compute_fleet_position(friendlyCoordinate, hostileCoordinate, distance, hostileCoordinate) 9 10 11 def compute_rear_fleet_position(friendlyCoordinate, hostileCoordinate, distance): 12 return compute_fleet_position(friendlyCoordinate, hostileCoordinate, distance, friendlyCoordinate) 13 14 15 def compute_fleet_position(friendlyCoordinate, hostileCoordinate, distance, referenceCoordinate): 16 rearVector = geo2.Vec3SubtractD(friendlyCoordinate, hostileCoordinate) 17 rearVector = geo2.Vec3Normalize(rearVector) 18 displacementVector = geo2.Vec3Scale(rearVector, distance) 19 desiredRearPosition = geo2.Vec3AddD(referenceCoordinate, displacementVector) 20 return desiredRearPosition 21 22 23 def get_normalized_dict(target_dict): 24 max_value = max(target_dict.itervalues()) 25 if max_value == 0: 26 return target_dict.copy() 27 return {key:float(value) / max_value for key, value in target_dict.iteritems()}