ddd.vector

  • struct Вектор3;

    Структура, представляющая 3-х мерный вектор (x, y, z)

    • static const Вектор3 НОЛЬ;

      Нулевой вектор

    • static const Вектор3 ЕДИНИЦА_X;
      static const Вектор3 ЕДИНИЦА_Y;
      static const Вектор3 ЕДИНИЦА_Z;
      static const Вектор3 МИНУС_ЕДИНИЦА_X;
      static const Вектор3 МИНУС_ЕДИНИЦА_Y;
      static const Вектор3 МИНУС_ЕДИНИЦА_Z;

      Единичные вектора по каждой из координатных осей

    • static const Вектор3 ЕДИНИЦА_МАСШТАБА;

      Вектор (1, 1, 1), используемый для равномерного масштабирования

    • this(float fX, float fY, float fZ);

      Конструктор, принимающий координаты

    • this(const(Вектор3) другой_вектор);

      Конструктор копирования

    • this(float[] массив);

      Конструктор, принимающий координаты в виде массива

    • this(float скаляр);

      Конструктор, формирующий вектор с координатами, равными переданному числу (обычно используется для равномерного масштабирования)

    • const float длина();
      const float length();

      Метод, возвращающий длину вектора

    • Вектор3 opBinary(string операция)(const(Вектор3) другой_вектор) if (операция == "+" || операция == "-" || операция == "*");

      Операция, применяемая к координатам векторов поэлементно

    • Вектор3 opOpAssign(string операция)(const(Вектор3) другой_вектор) if (операция == "+" || операция == "-" || операция == "*");

      Поэлементные операции над векторами "на месте"

    • Вектор3 opBinary(string операция)(const(float) скаляр) if (операция == "*");

      Операция умножения вектора на число

    • Вектор3 opUnary(string операция)() if (операция == "-");

      Операция, возвращающая вектор, противоположный этому

    • float расстояние(const(Вектор3) другой_вектор);

      Функция, вычисляющая расстояние между векторами, т.е. длину вектора, являющегося разницей между этим вектором и переданным

    • float скалярное_произведение(const(Вектор3) другой_вектор);

      Скалярное произведение векторов

    • float нормализация();

      Функция нормализации, приводящая вектор к единичной длине.

      Замечание: Если длина вектора равна нулю, он остаётся без изменений.

      Возвращаемое значение:

      Значение первоначальной длины вектора.

    • Вектор3 векторное_произведение(const(Вектор3) другой_вектор);

      Функция, возвращающая векторное произведение этого вектора на переданный

    • float угол_между(const(Вектор3) другой_вектор);

      Функция, возвращающая значение угла в радианах между этим вектором и переданным

    • bool нулевая_длина();

      Проверка, является ли этот вектор нулевым

    • Вектор3 нормализованная_копия();

      Функция, возвращающая новый вектор единичной длины, направленный так же, как и этот вектор.

      Замечание: Если длина вектора равна нулю, возвращается такой же нулевой вектор.

      Возвращаемое значение:

      Вектор единичной длины, направленный так же, как и этот вектор.

      See Also: нормализация