Vector2 结构

定义

表示一个具有两个单精度浮点值的向量。

public value class Vector2 : IEquatable<System::Numerics::Vector2>, IFormattable
public struct Vector2 : IEquatable<System.Numerics.Vector2>, IFormattable
type Vector2 = struct
    interface IFormattable
Public Structure Vector2
Implements IEquatable(Of Vector2), IFormattable
继承
Vector2
实现

注解

Vector2 结构为硬件加速提供支持。

对于矩阵转换,Vector2Vector3Vector4 实例表示为行:矩阵 M 使用 vM 乘法转换矢量 v。

构造函数

Vector2(ReadOnlySpan<Single>)

根据给定的 ReadOnlySpan<T> 构造一个向量。 范围必须至少包含两个元素。

Vector2(Single)

创建一个其两个元素具有相同值的新 Vector2 对象。

Vector2(Single, Single)

创建一个其元素具有指定值的向量。

字段

X

向量的 X 分量。

Y

向量的 Y 分量。

属性

Item[Int32]
One

获取一个其 2 个元素等于 1 的向量。

UnitX

获取向量 (1,0)。

UnitY

获取向量 (0,1)。

Zero

返回一个其 2 个元素等于 0 的向量。

方法

Abs(Vector2)

返回一个向量,其元素是指定向量的每个元素的绝对值。

Add(Vector2, Vector2)

将两个向量相加。

Clamp(Vector2, Vector2, Vector2)

将向量限制在最小值与最大值之间。

CopyTo(Single[])

将向量的元素复制到指定数组中。

CopyTo(Single[], Int32)

从指定的索引位置开始,将向量的元素复制到指定的数组中。

CopyTo(Span<Single>)

将向量复制到给定 Span<T>的 。目标范围长度必须至少为 2。

Distance(Vector2, Vector2)

计算两个给定点之间的欧几里得距离。

DistanceSquared(Vector2, Vector2)

返回两个指定点之间的欧几里得距离平方值。

Divide(Vector2, Single)

将指定向量除以指定标量值。

Divide(Vector2, Vector2)

将第一个向量除以第二个向量。

Dot(Vector2, Vector2)

返回两个向量的点积。

Equals(Object)

返回一个值,该值指示此实例是否与指定对象相等。

Equals(Vector2)

返回一个值,该值指示此实例是否与另一个向量相等。

GetHashCode()

返回此实例的哈希代码。

Length()

返回向量的长度。

LengthSquared()

返回向量长度平方值。

Lerp(Vector2, Vector2, Single)

基于给定权重在两个向量之间执行线性内插。

Max(Vector2, Vector2)

返回一个向量,其元素是两个指定向量中每对元素的较大值。

Min(Vector2, Vector2)

返回一个向量,其元素是两个指定向量中每对元素的较小值。

Multiply(Single, Vector2)

将标量值乘以指定向量。

Multiply(Vector2, Single)

将向量乘以指定标量。

Multiply(Vector2, Vector2)

返回一个新向量,其值是两个指定向量中的每对元素的乘积。

Negate(Vector2)

对指定向量求反。

Normalize(Vector2)

返回一个向量,其方向与指定向量相同,但长度为一。

Reflect(Vector2, Vector2)

返回向量对具有指定法线的表面的反射。

SquareRoot(Vector2)

返回一个向量,其元素是指定向量的每个元素的平方根。

Subtract(Vector2, Vector2)

从第一个向量中减去第二个向量。

ToString()

使用默认格式设置返回当前实例的字符串表示形式。

ToString(String)

通过使用指定格式字符串设置各个元素的格式,来返回当前实例的字符串表示形式。

ToString(String, IFormatProvider)

通过使用指定格式字符串设置各个元素的格式并使用指定格式提供程序定义特定于区域性的格式设置,来返回当前实例的字符串表示形式。

Transform(Vector2, Matrix3x2)

通过指定 3 x 2 矩阵变换向量。

Transform(Vector2, Matrix4x4)

通过指定 4 x 4 矩阵变换向量。

Transform(Vector2, Quaternion)

通过指定的四元数旋转值变换向量。

TransformNormal(Vector2, Matrix3x2)

通过给定的 3 x 2 矩阵变换向量法线。

TransformNormal(Vector2, Matrix4x4)

通过给定的 4 x 4 矩阵转换向量法线。

TryCopyTo(Span<Single>)

请尝试将向量复制到给定的 Span<T>。 目标范围长度必须至少为 2。

运算符

Addition(Vector2, Vector2)

将两个向量相加。

Division(Vector2, Single)

将指定向量除以指定标量值。

Division(Vector2, Vector2)

将第一个向量除以第二个向量。

Equality(Vector2, Vector2)

返回一个值,该值指示两个指定向量中的每对元素是否相等。

Inequality(Vector2, Vector2)

返回一个值,该值指示两个指定向量是否不相等。

Multiply(Single, Vector2)

将标量值乘以指定向量。

Multiply(Vector2, Single)

将指定向量乘以指定标量值。

Multiply(Vector2, Vector2)

返回一个新向量,其值是两个指定向量中的每对元素的乘积。

Subtraction(Vector2, Vector2)

从第一个向量中减去第二个向量。

UnaryNegation(Vector2)

对指定向量求反。

扩展方法

ToPoint(Vector2)
ToSize(Vector2)
AsVector128(Vector2)

Vector2 重新解释为新的 Vector128<T>

适用于