Vector4 结构
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示具有四个单精度浮点值的向量。
public value class Vector4 : IEquatable<System::Numerics::Vector4>, IFormattable
public struct Vector4 : IEquatable<System.Numerics.Vector4>, IFormattable
type Vector4 = struct
interface IFormattable
Public Structure Vector4
Implements IEquatable(Of Vector4), IFormattable
- 继承
- 实现
注解
该 Vector4 结构为硬件加速提供支持。
对于矩阵转换,Vector2和Vector3Vector4实例表示为行:矢量 v 由具有 vM 乘法的矩阵 M 转换。
构造函数
| 名称 | 说明 |
|---|---|
| Vector4(ReadOnlySpan<Single>) |
从给定 ReadOnlySpan<T>的向量构造一个向量。 范围必须至少包含 4 个元素。 |
| Vector4(Single, Single, Single, Single) |
创建其元素具有指定值的向量。 |
| Vector4(Single) |
创建一个新 Vector4 对象,其四个元素具有相同的值。 |
| Vector4(Vector2, Single, Single) | |
| Vector4(Vector3, Single) |
字段
| 名称 | 说明 |
|---|---|
| W |
矢量的 W 组件。 |
| X |
矢量的 X 分量。 |
| Y |
矢量的 Y 分量。 |
| Z |
矢量的 Z 分量。 |
属性
| 名称 | 说明 |
|---|---|
| AllBitsSet |
获取所有位都设置为 |
| E |
获取其元素等于 E的向量。 |
| Epsilon |
获取其元素等于 Epsilon的向量。 |
| Item[Int32] |
获取或设置指定索引处的元素。 |
| NaN |
获取其元素等于 NaN的向量。 |
| NegativeInfinity |
获取其元素等于 NegativeInfinity的向量。 |
| NegativeZero |
获取其元素等于 NegativeZero的向量。 |
| One |
获取一个向量,其 4 个元素等于 1。 |
| Pi |
获取其元素等于 Pi的向量。 |
| PositiveInfinity |
获取其元素等于 PositiveInfinity的向量。 |
| Tau |
获取其元素等于 Tau的向量。 |
| UnitW |
获取向量(0,0,0,1)。 |
| UnitX |
获取向量(1,0,0,0)。 |
| UnitY |
获取向量(0,1,0,0)。 |
| UnitZ |
获取向量(0,0,1,0)。 |
| Zero |
获取一个向量,其 4 个元素等于零。 |
方法
运营商
| 名称 | 说明 |
|---|---|
| Addition(Vector4, Vector4) |
将两个向量相加。 |
| BitwiseAnd(Vector4, Vector4) |
计算两个向量的按位和两个向量。 |
| BitwiseOr(Vector4, Vector4) |
计算两个向量的按位或两个向量。 |
| Division(Vector4, Single) |
将指定的向量除以指定的标量值。 |
| Division(Vector4, Vector4) |
将第一个向量除以第二个。 |
| Equality(Vector4, Vector4) |
返回一个值,该值指示两个指定向量中的每个元素对是否相等。 |
| ExclusiveOr(Vector4, Vector4) |
计算两个向量的独占或两个向量。 |
| Inequality(Vector4, Vector4) |
返回一个值,该值指示两个指定的向量是否不相等。 |
| LeftShift(Vector4, Int32) |
将向量的每个元素左移指定量。 |
| Multiply(Single, Vector4) |
将标量值乘以指定的向量。 |
| Multiply(Vector4, Single) |
按指定的标量值对指定向量进行倍数。 |
| Multiply(Vector4, Vector4) |
返回一个新向量,其值是两个指定向量中每个元素对的乘积。 |
| OnesComplement(Vector4) |
计算矢量的补数。 |
| RightShift(Vector4, Int32) |
按指定量向量向右移动 (signed) 的每个元素。 |
| Subtraction(Vector4, Vector4) |
从第一个向量中减去第二个向量。 |
| UnaryNegation(Vector4) |
否定指定的向量。 |
| UnaryPlus(Vector4) |
返回给定向量不变。 |
| UnsignedRightShift(Vector4, Int32) |
按指定量向量向右移动(无符号)的每个元素。 |
扩展方法
| 名称 | 说明 |
|---|---|
| AsPlane(Vector4) | |
| AsQuaternion(Vector4) |
重新解释 Vector4 为新的 Quaternion。 |
| AsVector128(Vector4) |
重新解释 Vector4 为新的 Vector128<T>。 |
| AsVector2(Vector4) | |
| AsVector3(Vector4) | |
| ExtractMostSignificantBits(Vector4) |
从向量中的每个元素中提取最重要的位。 |
| GetElement(Vector4, Int32) |
获取指定索引处的元素。 |
| Store(Vector4, Single*) |
将向量存储在给定的目标处。 |
| StoreAligned(Vector4, Single*) |
将矢量存储在给定的 16 字节对齐目标处。 |
| StoreAlignedNonTemporal(Vector4, Single*) |
将矢量存储在给定的 16 字节对齐目标处。 |
| StoreUnsafe(Vector4, Single, UIntPtr) |
将向量存储在给定的目标处。 |
| StoreUnsafe(Vector4, Single) |
将向量存储在给定的目标处。 |
| ToScalar(Vector4) |
将给定向量转换为包含第一个元素值的标量。 |
| WithElement(Vector4, Int32, Single) |
Vector128<T>使用指定索引处的元素设置为指定值,其余元素设置为与给定向量中的元素相同的值。 |