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) 运算符和-静态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 值

xXVector3D结构的组件。

yYVector3D 结构的组件。

zZVector3D结构的组件。

构造函数

名称 说明
Vector3D(Double, Double, Double)

初始化结构的新实例 Vector3D

属性

名称 说明
Length

获取此 Vector3D 结构的长度。

LengthSquared

获取此 Vector3D 结构的长度的平方。

X

获取或设置 XVector3D 结构的组件。

Y

获取或设置 YVector3D 结构的组件。

Z

获取或设置 ZVector3D 结构的组件。

方法

名称 说明
Add(Vector3D, Point3D)

按指定结构转换指定Point3DVector3D结构,并将结果作为Point3D结构返回。

Add(Vector3D, Vector3D)

添加两 Vector3D 个结构,并将结果作为结构 Vector3D 返回。

AngleBetween(Vector3D, Vector3D)

检索将第一个指定结构旋转到第二个指定Vector3DVector3D结构所需的角度。

CrossProduct(Vector3D, Vector3D)

计算两 Vector3D 个结构的交叉乘积。

Divide(Vector3D, Double)

将指定的结构除以指定的 Vector3D 标量并返回结果作为一个 Vector3D

DotProduct(Vector3D, Vector3D)

计算两 Vector3D 个结构的点积。

Equals(Object)

确定指定的对象是否为Vector3D结构,以及指定X对象的和Y属性是否ZObject等于XYZ结构的属性和Vector3D属性。

Equals(Vector3D, Vector3D)

比较两 Vector3D 个结构是否相等。

Equals(Vector3D)

比较两 Vector3D 个结构是否相等。

GetHashCode()

获取此 Vector3D 结构的哈希代码。

Multiply(Double, Vector3D)

将指定的标量乘以指定的 Vector3D 结构,并返回结果作为一个 Vector3D

Multiply(Vector3D, Double)

将指定的结构乘以指定的 Vector3D 标量并返回结果作为一个 Vector3D

Multiply(Vector3D, Matrix3D)

使用指定的结构转换指定Vector3DMatrix3D结构的坐标空间。

Negate()

否定结构 Vector3D

Normalize()

规范化指定的 Vector3D 结构。

Parse(String)

String 三维向量表示形式转换为等效 Vector3D 结构。

Subtract(Vector3D, Point3D)

Point3D 结构中减去结构 Vector3D

Subtract(Vector3D, Vector3D)

Vector3D 结构中减去结构 Vector3D

ToString()

String创建此Vector3D结构的表示形式。

ToString(IFormatProvider)

String创建此Vector3D结构的表示形式。

运营商

名称 说明
Addition(Vector3D, Point3D)

按指定结构转换指定Point3DVector3D结构,并将结果作为Point3D结构返回。

Addition(Vector3D, Vector3D)

添加两 Vector3D 个结构,并将结果作为结构 Vector3D 返回。

Division(Vector3D, Double)

将指定的结构除以指定的 Vector3D 标量并返回结果作为一个 Vector3D

Equality(Vector3D, Vector3D)

比较两 Vector3D 个结构是否相等。

Explicit(Vector3D to Point3D)

Vector3D 结构转换为 Point3D 结构。

Explicit(Vector3D to Size3D)

Vector3D 结构转换为 Size3D.

Inequality(Vector3D, Vector3D)

比较两 Vector3D 个不相等结构。

Multiply(Double, Vector3D)

将指定的标量乘以指定的 Vector3D 结构,并返回结果作为一个 Vector3D

Multiply(Vector3D, Double)

将指定的结构乘以指定的 Vector3D 标量并返回结果作为一个 Vector3D

Multiply(Vector3D, Matrix3D)

使用指定的结构转换指定Vector3DMatrix3D结构的坐标空间。

Subtraction(Vector3D, Point3D)

Point3D 结构中减去结构 Vector3D

Subtraction(Vector3D, Vector3D)

Vector3D 结构中减去结构 Vector3D

UnaryNegation(Vector3D)

否定结构 Vector3D

显式接口实现

名称 说明
IFormattable.ToString(String, IFormatProvider)

此成员是Windows Presentation Foundation(WPF)基础结构的一部分,不应由代码直接使用。 有关此成员的说明,请参阅 ToString(String, IFormatProvider)

适用于