public static bool RectContainsLoc(rect r, location loc) => RectContainsCoords(r, GetLocationX(loc), GetLocationY(loc));
public static double AngleBetweenPoints(location locA, location locB) => bj_RADTODEG *Atan2(GetLocationY(locB) - GetLocationY(locA), GetLocationX(locB) - GetLocationX(locA));
public static location OffsetLocation(location loc, double dx, double dy) => Location(GetLocationX(loc) + dx, GetLocationY(loc) + dy);
public static void MoveLocation(location whichLocation, double newX, double newY) { whichLocation.x = newX; whichLocation.y = newY; }
public static double GetLocationY(location whichLocation) => whichLocation.y;
public static void RemoveLocation(location whichLocation) => whichLocation.x = whichLocation.y = 0;
public static void MoveRectToLoc(rect whichRect, location newCenter) => MoveRectTo(whichRect, newCenter.x, newCenter.y);
public static void SetRectFromLoc(rect whichRect, location min, location max) => SetRect(whichRect, min.x, min.y, max.x, max.y);
public static rect RectFromLoc(location min, location max) => Rect(min.x, min.y, max.x, max.y);
public static bool CompareLocationsBJ(location A, location B) => GetLocationX(A) == GetLocationX(B) && GetLocationY(A) == GetLocationY(B);