public static bool isNativeDirection(directionStatus direction) { bool isNative = false; if (direction == directionStatus.NORTHWEST || direction == directionStatus.SOUTHWEST || direction == directionStatus.WEST) { isNative = true; } return(isNative); }
public static directionStatus getRealDirectionStatus(directionStatus direction) { if (direction == directionStatus.NORTHEAST || direction == directionStatus.NORTHWEST) { direction = directionStatus.NORTHEAST; } return(direction); }
public static string getDirectionStatusToString(directionStatus status) { string statusStr = ""; switch (status) { case directionStatus.None: statusStr = "None"; break; case directionStatus.NORTH: statusStr = "NORTH"; break; case directionStatus.NORTHEAST: statusStr = "NORTHEAST"; break; case directionStatus.EAST: statusStr = "EAST"; break; case directionStatus.SOUTHEAST: statusStr = "SOUTHEAST"; break; case directionStatus.SOUTH: statusStr = "SOUTH"; break; case directionStatus.SOUTHWEST: statusStr = "SOUTHWEST"; break; case directionStatus.WEST: statusStr = "WEST"; break; case directionStatus.NORTHWEST: statusStr = "NORTHWEST"; break; default: break; } return(statusStr); }
public static string getSceneDirectionRes(directionStatus direction) { string dir = getDirectionStatusToString(direction); if (direction == directionStatus.NORTHWEST) { dir = getDirectionStatusToString(directionStatus.NORTHEAST); } else if (direction == directionStatus.SOUTHWEST) { dir = getDirectionStatusToString(directionStatus.SOUTHEAST); } else if (direction == directionStatus.WEST) { dir = getDirectionStatusToString(directionStatus.EAST); } return(dir); }
public static directionStatus getDirection(float x, float y) { directionStatus status = directionStatus.None; float angle = Mathf.Atan2(x, y) * Mathf.Rad2Deg + 180; if ((angle >= 0 && angle < SouthWestMaxAngle) || angle >= SouthMaxAngle) { status = directionStatus.SOUTH; } else if (angle >= SouthWestMaxAngle && angle < WestMaxAngle) { status = directionStatus.SOUTHWEST; } else if (angle >= WestMaxAngle && angle < NorthWestMaxAngle) { status = directionStatus.WEST; } else if (angle >= NorthWestMaxAngle && angle < NorthMaxAngle) { status = directionStatus.NORTHWEST; } else if (angle >= NorthMaxAngle && angle < NorthEastMaxAngle) { status = directionStatus.NORTH; } else if (angle >= NorthEastMaxAngle && angle < EastMaxAngle) { status = directionStatus.NORTHEAST; } else if (angle >= EastMaxAngle && angle < SouthEastMaxAngle) { status = directionStatus.EAST; } else if (angle >= SouthEastMaxAngle && angle < SouthMaxAngle) { status = directionStatus.SOUTHEAST; } else { status = directionStatus.SOUTH; } //if ((angle >= 0 && angle < SouthMaxAngle) || angle >= SouthWestMaxAngle) //{ // status = directionStatus.SOUTH; //} //else if (angle >= SouthMaxAngle && angle < SouthEastMaxAngle) //{ // status = directionStatus.SOUTHEAST; //} //else if (angle >= SouthEastMaxAngle && angle < EastMaxAngle) //{ // status = directionStatus.EAST; //} //else if (angle >= EastMaxAngle && angle < NorthEastMaxAngle) //{ // status = directionStatus.NORTHEAST; //} //else if (angle >= NorthEastMaxAngle && angle < NorthMaxAngle) //{ // status = directionStatus.NORTH; //} //else if (angle >= NorthMaxAngle && angle < NorthWestMaxAngle) //{ // status = directionStatus.NORTHWEST; //} //else if (angle >= NorthWestMaxAngle && angle < WestMaxAngle) //{ // status = directionStatus.WEST; //} //else if (angle >= WestMaxAngle && angle < SouthWestMaxAngle) //{ // status = directionStatus.SOUTHWEST; //} //else //{ // status = directionStatus.SOUTH; //} return(status); }