Vector3D Структура
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет смещение в трехмерном пространстве.
public value class Vector3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Vector3DConverter))]
[System.Serializable]
public struct Vector3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Vector3DConverter))]
public struct Vector3D : IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Vector3DConverter))>]
[<System.Serializable>]
type Vector3D = struct
interface IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Vector3DConverter))>]
type Vector3D = struct
interface IFormattable
Public Structure Vector3D
Implements IFormattable
- Наследование
- Атрибуты
- Реализации
Примеры
В этом примере показано, как вычитать структуры с помощью перегруженного оператора вычитания Vector3D (-) и Vector3D статического Subtract метода.
В следующем коде показано, как использовать Vector3D методы вычитания. Во-первых Vector3D , структуры создаются.
Vector3D Структуры вычитаются с помощью перегруженного (-) оператора, а затем вычитаются с помощью статического Subtract метода.
// Subtracts two 3-D Vectors using the Subtract method and -
// Declaring vector1 and initializing x,y,z values
Vector3D vector1 = new Vector3D(20, 30, 40);
// Declaring vector2 without initializing x,y,z values
Vector3D vector2 = new Vector3D();
// Assigning values to vector2
vector2.X = 45;
vector2.Y = 70;
vector2.Z = 80;
// Subtracting vectors using overload - operator
Vector3D vectorResult1 = new Vector3D();
vectorResult1 = vector1 - vector2;
// vectorResult1 is equal to (-25, -40, -40)
// Subtracting vectors using static Subtract method
Vector3D vectorResult2 = new Vector3D();
vectorResult2 = Vector3D.Subtract(vector1, vector2);
// vector2 is equal to (-25, -40, -40)
Комментарии
Использование атрибута XAML
<object property="x,y,z"/>
-or
<object property="x y z"/>
Значения XAML
x Компонент X этой Vector3D структуры.
y Компонент Y этой Vector3D структуры.
z Компонент Z этой Vector3D структуры.
Конструкторы
| Имя | Описание |
|---|---|
| Vector3D(Double, Double, Double) |
Инициализирует новый экземпляр Vector3D структуры. |
Свойства
| Имя | Описание |
|---|---|
| Length |
Возвращает длину этой Vector3D структуры. |
| LengthSquared |
Возвращает квадрат длины этой Vector3D структуры. |
| X | |
| Y | |
| Z |
Методы
| Имя | Описание |
|---|---|
| Add(Vector3D, Point3D) |
Преобразует указанную Point3D структуру по указанной Vector3D структуре и возвращает результат в виде Point3D структуры. |
| Add(Vector3D, Vector3D) |
Добавляет две Vector3D структуры и возвращает результат в виде Vector3D структуры. |
| AngleBetween(Vector3D, Vector3D) |
Извлекает угол, необходимый для поворота первой указанной Vector3D структуры во вторую указанную Vector3D структуру. |
| CrossProduct(Vector3D, Vector3D) |
Вычисляет перекрестный продукт двух Vector3D структур. |
| Divide(Vector3D, Double) |
Разделяет указанную Vector3D структуру по указанному скаляру и возвращает результат в виде Vector3D. |
| DotProduct(Vector3D, Vector3D) |
Вычисляет точечный продукт двух Vector3D структур. |
| Equals(Object) |
Определяет, является ли Vector3DXYуказанный объект структуройZ, а свойства указанного Object объекта равны XYZ и свойствам этой Vector3D структуры. |
| Equals(Vector3D, Vector3D) |
Сравнивает две Vector3D структуры для равенства. |
| Equals(Vector3D) |
Сравнивает две Vector3D структуры для равенства. |
| GetHashCode() |
Получает хэш-код для этой Vector3D структуры. |
| Multiply(Double, Vector3D) |
Умножает указанный скаляр на указанную Vector3D структуру и возвращает результат в виде Vector3D. |
| Multiply(Vector3D, Double) |
Умножает указанную Vector3D структуру на указанный скаляр и возвращает результат в виде Vector3D. |
| Multiply(Vector3D, Matrix3D) |
Преобразует пространство координат указанной Vector3D структуры с помощью указанной Matrix3D структуры. |
| Negate() |
Отрицает структуру Vector3D . |
| Normalize() |
Нормализует указанную Vector3D структуру. |
| Parse(String) |
String Преобразует представление трехмерного вектора в эквивалентную Vector3D структуру. |
| Subtract(Vector3D, Point3D) | |
| Subtract(Vector3D, Vector3D) | |
| ToString() | |
| ToString(IFormatProvider) |
Операторы
| Имя | Описание |
|---|---|
| Addition(Vector3D, Point3D) |
Преобразует указанную Point3D структуру по указанной Vector3D структуре и возвращает результат в виде Point3D структуры. |
| Addition(Vector3D, Vector3D) |
Добавляет две Vector3D структуры и возвращает результат в виде Vector3D структуры. |
| Division(Vector3D, Double) |
Разделяет указанную Vector3D структуру по указанному скаляру и возвращает результат в виде Vector3D. |
| Equality(Vector3D, Vector3D) |
Сравнивает две Vector3D структуры для равенства. |
| Explicit(Vector3D to Point3D) | |
| Explicit(Vector3D to Size3D) | |
| Inequality(Vector3D, Vector3D) |
Сравнивает две Vector3D структуры для неравенства. |
| Multiply(Double, Vector3D) |
Умножает указанный скаляр на указанную Vector3D структуру и возвращает результат в виде Vector3D. |
| Multiply(Vector3D, Double) |
Умножает указанную Vector3D структуру на указанный скаляр и возвращает результат в виде Vector3D. |
| Multiply(Vector3D, Matrix3D) |
Преобразует пространство координат указанной Vector3D структуры с помощью указанной Matrix3D структуры. |
| Subtraction(Vector3D, Point3D) | |
| Subtraction(Vector3D, Vector3D) | |
| UnaryNegation(Vector3D) |
Отрицает структуру Vector3D . |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IFormattable.ToString(String, IFormatProvider) |
Этот элемент является частью инфраструктуры Windows Presentation Foundation (WPF) и не предназначен для непосредственного использования кодом. Описание этого элемента см. в разделе ToString(String, IFormatProvider). |