Base6Directions

From Space Engineers Wiki
Jump to: navigation, search

Версия игры: 1.144
Пространство имён VRageMath

public class Base6Directions
  Класс, описывающий шесть основных направлений

Статические свойства:

public static readonly Base6Directions.Direction[] EnumDirections
  Перечисление направлений, [0] - вперёд, [1] - назад, [2] - влево, [3] - вправо, [4] - вверх, [5] - вниз

public static readonly Vector3[] Directions
  Перечисление направлений в виде векторов

public static readonly Vector3I[] IntDirections
  Перечисление направлений в виде целочисленных векторов

Методы:

public static bool IsBaseDirection(ref Vector3 vec)
public static bool IsBaseDirection(Vector3 vec)
public static bool IsBaseDirection(ref Vector3I vec)
  Имеет ли вектор единичную длину

public static Vector3 GetVector(int direction)
public static Vector3I GetIntVector(int direction)
  Возвращает вектор по номеру направления

public static Vector3 GetVector(Base6Directions.Direction dir)
public static Vector3I GetIntVector(Base6Directions.Direction dir)
  Возвращает вектор по направлению

public static void GetVector(Base6Directions.Direction dir, out Vector3 result)
  Возвращает в result вектор по направлению

public static Base6Directions.DirectionFlags GetDirectionFlag(Base6Directions.Direction dir)
  Возвращает флаг направления пол направлению

public static Base6Directions.Direction GetPerpendicular(Base6Directions.Direction dir)
  Возвращает перпендикулярное направление

public static Base6Directions.Direction GetDirection(Vector3 vec)
public static Base6Directions.Direction GetDirection(ref Vector3 vec)
public static Base6Directions.Direction GetDirection(Vector3I vec)
public static Base6Directions.Direction GetDirection(ref Vector3I vec)
  Возвращает направление по вектору

public static Base6Directions.Direction GetClosestDirection(Vector3 vec)
public static Base6Directions.Direction GetClosestDirection(ref Vector3 vec)
  Возвращает ближайшее направление по вектору

public static Base6Directions.Direction GetDirectionInAxis(Vector3 vec, Base6Directions.Axis axis) public static Base6Directions.Direction GetDirectionInAxis(ref Vector3 vec, Base6Directions.Axis axis)
  Возвращает направление по вектору с учётом указанных осей

public static Base6Directions.Direction GetForward(Quaternion rot)
public static Base6Directions.Direction GetForward(ref Quaternion rot)
public static Base6Directions.Direction GetForward(ref Matrix rotation)
  Возвращает направление "вперёд" для заданного кватерниона или матрицы public static Base6Directions.Direction GetUp(Quaternion rot)
public static Base6Directions.Direction GetUp(ref Quaternion rot)
public static Base6Directions.Direction GetUp(ref Matrix rotation)
  Возвращает направление "вверх" для заданного кватерниона или матрицы

public static Base6Directions.Axis GetAxis(Base6Directions.Direction direction)
  Возвращает ось для заданного направления

public static Base6Directions.Direction GetBaseAxisDirection(Base6Directions.Axis axis)
  Возвращает основное направление для заданной оси

public static Base6Directions.Direction GetFlippedDirection(Base6Directions.Direction toFlip)
  Возвращает направление, обратное заданному

public static Base6Directions.Direction GetCross(Base6Directions.Direction dir1, Base6Directions.Direction dir2)
  Возвращает направление, образующее с двумя заданными полный базис

public static Base6Directions.Direction GetLeft(Base6Directions.Direction up, Base6Directions.Direction forward)
  Возвращает направление левой грани при заданных направлениях верхней и передней

public static Quaternion GetOrientation(Base6Directions.Direction forward, Base6Directions.Direction up)
  Возвращает кватернион ориентации для заданных направлений передней и верхней граней

public static bool IsValidBlockOrientation(Base6Directions.Direction forward, Base6Directions.Direction up)
  Проверяет допустимость ориентации блока для заданных направлений передней и верхней граней

Перечисления:

public enum Direction : byte
  Направления
Forward = 0 - вверх
Backward = 1 - вниз
Left = 2 - влево
Right = 3 - вправо
Up = 4 - вверх
Down = 5 - вниз

public enum DirectionFlags : byte
  Флаги направлений
Forward = 1 - вверх
Backward = 2 - вниз
Left = 4 - влево
Right = 8 - вправо
Up = 16 - вверх
Down = 32 - вниз
All = Down | Up | Right | Left | Backward | Forward

public enum Axis : byte
  Оси
ForwardBackward = 0 - вперёд/назад
LeftRight = 1 - влево/вправо
UpDown = 2 - вверх/вниз