Найти тему

Vector2

Оглавление

Описание:

Это структура из 2 элементов, которая может использоваться для представления 2D-координат или любой другой пары числовых значений.

Vector2 использует координаты с плавающей запятой. По умолчанию эти значения имеют 32-битную точность, в отличие от float, который всегда имеет 64 бита. Если требуется двойная точность, скомпилируйте движок с параметром precision=double.

Смотрите Vector2i для его целочисленного аналога.

Примечание: В логическом контексте Vector2 будет оцениваться как false, если он равен Vector2(0, 0). В противном случае Vector2 всегда будет оцениваться как true.

Свойства:

  • float x: 0.0
    Компонент X вектора. Также доступен по индексу
    0.
  • float y: 0.0
    Компонент Y вектора. Также доступен по индексу
    1.

Конструкторы:

  • Vector2()
    Создает Vector2 с неинициализированными значениями, установленными на 0.
  • Vector2(from: Vector2)
    Создает Vector2 как копию заданного Vector2.
  • Vector2(from: Vector2i)
    Создает новый Vector2 из Vector2i.
  • Vector2(x: float, y: float)
    Создает новый Vector2 из заданных x и y.

Методы:

  • Vector2 abs() const
    Возвращает новый вектор с абсолютными значениями всех компонентов.
  • float angle() const
    Возвращает угол этого вектора относительно положительной оси X в радианах.
  • Vector2 normalized() const
    Возвращает результат масштабирования вектора до единичной длины.
  • float length() const
    Возвращает длину (модуль) этого вектора.
  • Vector2 lerp(to: Vector2, weight: float) const
    Возвращает результат линейной интерполяции между этим вектором и to с учетом веса.

Операторы:

  • bool operator !=(right: Vector2)
    Возвращает true, если векторы не равны.
  • Vector2 operator +(right: Vector2)
    Складывает соответствующие компоненты двух векторов.
  • Vector2 operator -(right: Vector2)
    Вычитает компоненты правого вектора из компонентов текущего.
  • *Vector2 operator (right: Vector2)
    Умножает каждую компоненту текущего вектора на соответствующую компоненту правого вектора.
  • Vector2 operator /(right: Vector2)
    Делит каждую компоненту текущего вектора на соответствующую компоненту правого вектора.

Константы:

  • AXIS_X = 0: Значение для оси X.
  • AXIS_Y = 1: Значение для оси Y.
  • ZERO = Vector2(0, 0): Нулевой вектор.
  • ONE = Vector2(1, 1): Вектор с единичными компонентами.
  • LEFT = Vector2(-1, 0): Вектор, указывающий влево.
  • RIGHT = Vector2(1, 0): Вектор, указывающий вправо.
  • UP = Vector2(0, -1): Вектор, указывающий вверх.
  • DOWN = Vector2(0, 1): Вектор, указывающий вниз.