position.py#
- class sc2.position.Pointlike(iterable=(), /)[source]#
- closest(ps: Iterable[_TPosLike]) _TPosLike[source]#
This function assumes the 2d distance is meant
- Parameters:
ps (
Iterable[TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])])- Return type:
TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])
- distance_to(target: HasPosition2D | tuple[float, float] | tuple[float, ...]) float[source]#
Calculate a single distance from a point or unit to another point or unit
- Parameters:
target (
Union[HasPosition2D,tuple[float,float],tuple[float,...]])- Return type:
float
- distance_to_closest(ps: Iterable[_TPosLike]) float[source]#
This function assumes the 2d distance is meant :type ps:
Iterable[TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])] :param ps:- Return type:
float
- distance_to_furthest(ps: Iterable[HasPosition2D | tuple[float, float] | tuple[float, ...]]) float[source]#
This function assumes the 2d distance is meant
- Parameters:
ps (
Iterable[Union[HasPosition2D,tuple[float,float],tuple[float,...]]])- Return type:
float
- distance_to_point2(p: tuple[float, float] | tuple[float, ...]) float[source]#
Same as the function above, but should be a bit faster because of the dropped asserts and conversion.
- Parameters:
p (
Union[tuple[float,float],tuple[float,...]])- Return type:
float
- furthest(ps: Iterable[_TPosLike]) _TPosLike[source]#
This function assumes the 2d distance is meant
- Parameters:
ps (
Iterable[TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])]) – Units object, or iterable of Unit or Point2- Return type:
TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])
- sort_by_distance(ps: Iterable[_TPosLike]) list[_TPosLike][source]#
This returns the target points sorted as list. You should not pass a set or dict since those are not sortable. If you want to sort your units towards a point, use ‘units.sorted_by_distance_to(point)’ instead.
- Parameters:
ps (
Iterable[TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])])- Return type:
list[TypeVar(_TPosLike, bound=Union[HasPosition2D,tuple[float,float],tuple[float,...]])]
- class sc2.position.Point2(iterable=(), /)[source]#
- property as_PointI: PointI#
Represents points on the minimap. Values must be between 0 and 64.
- circle_intersection(p: Point2, r: float) set[Point2][source]#
self is point1, p is point2, r is the radius for circles originating in both points Used in ramp finding
- direction_vector(other: Point2) Point2[source]#
Converts a vector to a direction that can face vertically, horizontally or diagonal or be zero, e.g. (0, 0), (1, -1), (1, 0)
- property length: float#
This property exists in case Point2 is used as a vector.
- class sc2.position.Rect(iterable=(), /)[source]#
-
- offset(p: tuple[float, float] | tuple[float, ...]) Rect[source]#
- Parameters:
p (
Union[tuple[float,float],tuple[float,...]])- Return type:
- property right: float#
Returns the x-coordinate of the rectangle of its right side.
- property top: float#
Returns the y-coordinate of the rectangle of its top side.