Vector4 構造体

定義

4 つの単精度浮動小数点値を持つベクターを表します。

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
実装

注釈

Vector4構造体は、ハードウェア アクセラレーションのサポートを提供します。

行列変換の場合、Vector2Vector3、およびVector4インスタンスは行として表されます。ベクトル vvM 乗算を使用して行列 M によって変換されます。

コンストラクター

名前 説明
Vector4(ReadOnlySpan<Single>)

指定した ReadOnlySpan<T>からベクターを構築します。 スパンには、少なくとも 4 つの要素が含まれている必要があります。

Vector4(Single, Single, Single, Single)

指定した値を持つ要素を持つベクターを作成します。

Vector4(Single)

4 つの要素が同じ値を持つ新しい Vector4 オブジェクトを作成します。

Vector4(Vector2, Single, Single)

指定したVector4 オブジェクトと Z および W コンポーネントから新しいVector2 オブジェクトを作成します。

Vector4(Vector3, Single)

指定したVector4 オブジェクトと W コンポーネントから新しいVector3 オブジェクトを構築します。

フィールド

名前 説明
W

ベクトルの W 成分。

X

ベクトルの X 成分。

Y

ベクトルの Y 成分。

Z

ベクトルの Z 成分。

プロパティ

名前 説明
AllBitsSet

すべてのビットが 1に設定されているベクターを取得します。

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 つの要素が 0 に等しいベクトルを取得します。

メソッド

名前 説明
Abs(Vector4)

指定した各ベクターの要素の絶対値を要素とするベクターを返します。

Add(Vector4, Vector4)

2 つのベクトルを一緒に追加します。

All(Vector4, Single)

ベクターのすべての要素が特定の値と等しいかどうかを判断します。

AllWhereAllBitsSet(Vector4)

ベクターのすべての要素に、すべてのビットが設定されているかどうかを判断します。

AndNot(Vector4, Vector4)

特定のベクトルのビットごとの計算と、別のベクトルの補数を計算します。

Any(Vector4, Single)

ベクターの要素が特定の値と等しいかどうかを判断します。

AnyWhereAllBitsSet(Vector4)

ベクターの要素に、すべてのビットが設定されているかどうかを判断します。

BitwiseAnd(Vector4, Vector4)

2 つのベクトルのビットごとの計算を行います。

BitwiseOr(Vector4, Vector4)

2 つのベクトルのビットごとのまたは 2 つのベクトルを計算します。

Clamp(Vector4, Vector4, Vector4)

最小値と最大値の間でベクトルを制限します。

ClampNative(Vector4, Vector4, Vector4)

NaNNegativeZeroのプラットフォーム固有の動作を使用して、最小値と最大値の間のベクトルを制限します。

ConditionalSelect(Vector4, Vector4, Vector4)

ビットごとの 2 つのベクトルから値を条件付きで選択します。

CopySign(Vector4, Vector4)

ベクトルの要素ごとの符号を、別のベクトルの要素ごとの符号にコピーします。

CopyTo(Single[], Int32)

指定したインデックス位置から始まる指定した配列に、ベクターの要素をコピーします。

CopyTo(Single[])

ベクターの要素を指定した配列にコピーします。

CopyTo(Span<Single>)

指定した Span<T>にベクターをコピーします。 宛先スパンの長さは、少なくとも 4 である必要があります。

Cos(Vector4)

ベクトル内の各要素のコサインを計算します。

Count(Vector4, Single)

指定された値と等しいベクター内の要素の数を決定します。

CountWhereAllBitsSet(Vector4)

すべてのビットが設定されているベクター内の要素の数を決定します。

Create(ReadOnlySpan<Single>)

指定した ReadOnlySpan<T>からベクターを構築します。 スパンには、少なくとも 4 つの要素が含まれている必要があります。

Create(Single, Single, Single, Single)

指定した値を持つ要素を持つベクターを作成します。

Create(Single)

4 つの要素が同じ値を持つ新しい Vector4 オブジェクトを作成します。

Create(Vector2, Single, Single)

指定したVector4 オブジェクトと Z および W コンポーネントから新しいVector2 オブジェクトを作成します。

Create(Vector3, Single)

指定したVector4 オブジェクトと W コンポーネントから新しいVector3 オブジェクトを構築します。

CreateScalar(Single)

指定した値に初期化 X 、残りの要素をゼロに初期化してベクターを作成します。

CreateScalarUnsafe(Single)

指定した値に初期化 X 、残りの要素が初期化されていない状態でベクターを作成します。

Cross(Vector4, Vector4)

2 つのベクトルのクロス積を計算します。 均一な座標の場合、重みの積は、結果として得られる製品の新しい重みになります。

DegreesToRadians(Vector4)

指定したベクトルを度からラジアンに変換します。

Distance(Vector4, Vector4)

指定された 2 つのポイント間のユークリッド距離を計算します。

DistanceSquared(Vector4, Vector4)

指定した 2 つのポイント間のユークリッド距離を 2 乗して返します。

Divide(Vector4, Single)

指定したベクターを、指定したスカラー値で除算します。

Divide(Vector4, Vector4)

最初のベクトルを 2 番目のベクトルで除算します。

Dot(Vector4, Vector4)

2 つのベクトルのドット積を返します。

Equals(Object)

このインスタンスと指定したオブジェクトが等しいかどうかを示す値を返します。

Equals(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとに等しいかどうかを判断します。

Equals(Vector4)

このインスタンスと別のベクターが等しいかどうかを示す値を返します。

EqualsAll(Vector4, Vector4)

2 つのベクトルを比較して、すべての要素が等しいかどうかを判断します。

EqualsAny(Vector4, Vector4)

2 つのベクトルを比較して、要素が等しいかどうかを判断します。

Exp(Vector4)

ベクトル内の各要素の指数関数を計算します。

FusedMultiplyAdd(Vector4, Vector4, Vector4)

コンピューティング (left * right) + addend。1 つの三項演算として丸められます。

GetHashCode()

このインスタンスのハッシュ コードを返します。

GreaterThan(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとにどちらが大きいかを判断します。

GreaterThanAll(Vector4, Vector4)

2 つのベクトルを比較して、すべての要素が大きいかどうかを判断します。

GreaterThanAny(Vector4, Vector4)

2 つのベクトルを比較して、要素が大きいかどうかを判断します。

GreaterThanOrEqual(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとに大きいか等しいかを判断します。

GreaterThanOrEqualAll(Vector4, Vector4)

2 つのベクトルを比較して、すべての要素が大きいか等しいかを判断します。

GreaterThanOrEqualAny(Vector4, Vector4)

2 つのベクトルを比較して、要素が大きいか等しいかを判断します。

Hypot(Vector4, Vector4)

直角三角形の短辺の長さを表す 2 つのベクトルを指定して、低血圧を計算します。

IndexOf(Vector4, Single)

指定された値と等しいベクトル内の最初の要素のインデックスを決定します。

IndexOfWhereAllBitsSet(Vector4)

すべてのビットが設定されているベクター内の最初の要素のインデックスを決定します。

IsEvenInteger(Vector4)

ベクトル内のどの要素が偶数の整数値であるかを決定します。

IsFinite(Vector4)

ベクトル内のどの要素が有限であるかを決定します。

IsInfinity(Vector4)

ベクトル内のどの要素が無限大であるかを決定します。

IsInteger(Vector4)

ベクトル内のどの要素が整数値であるかを決定します。

IsNaN(Vector4)

ベクトル内のどの要素が NaN であるかを決定します。

IsNegative(Vector4)

負の実数を表すベクター内の要素を決定します。

IsNegativeInfinity(Vector4)

ベクトル内のどの要素が負の無限大であるかを決定します。

IsNormal(Vector4)

ベクトル内のどの要素が正常であるかを決定します。

IsOddInteger(Vector4)

ベクトル内のどの要素が奇数の整数値であるかを決定します。

IsPositive(Vector4)

ベクトル内のどの要素が正の実数を表すかを決定します。

IsPositiveInfinity(Vector4)

ベクトル内のどの要素が正の無限大であるかを決定します。

IsSubnormal(Vector4)

ベクトル内のどの要素が非正規であるかを決定します。

IsZero(Vector4)

ベクトル内のどの要素が 0 であるかを決定します。

LastIndexOf(Vector4, Single)

指定された値と等しいベクター内の最後の要素のインデックスを決定します。

LastIndexOfWhereAllBitsSet(Vector4)

すべてのビットが設定されているベクター内の最後の要素のインデックスを決定します。

Length()

このベクター オブジェクトの長さを返します。

LengthSquared()

ベクトルの 2 乗の長さを返します。

Lerp(Vector4, Vector4, Single)

指定された重みに基づいて、2 つのベクトル間で線形補間を実行します。

Lerp(Vector4, Vector4, Vector4)

指定された重みに基づいて、2 つのベクトル間で線形補間を実行します。

LessThan(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとにどちらが小さいかを判断します。

LessThanAll(Vector4, Vector4)

2 つのベクトルを比較して、すべての要素が小さいかどうかを判断します。

LessThanAny(Vector4, Vector4)

2 つのベクトルを比較して、要素が少ないかどうかを判断します。

LessThanOrEqual(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとに次のベクトルを決定します。

LessThanOrEqualAll(Vector4, Vector4)

2 つのベクトルを比較して、すべての要素が小さいか等しいかを判断します。

LessThanOrEqualAny(Vector4, Vector4)

2 つのベクトルを比較して、要素が小さいか等しいかを判断します。

Load(Single*)

指定されたソースからベクターを読み込みます。

LoadAligned(Single*)

指定された配置されたソースからベクターを読み込みます。

LoadAlignedNonTemporal(Single*)

指定された配置されたソースからベクターを読み込みます。

LoadUnsafe(Single, UIntPtr)

指定されたソースと要素のオフセットからベクターを読み込みます。

LoadUnsafe(Single)

指定されたソースからベクターを読み込みます。

Log(Vector4)

ベクター内の各要素のログを計算します。

Log2(Vector4)

ベクトル内の各要素の log2 を計算します。

Max(Vector4, Vector4)

指定した 2 つのベクター内の要素の各ペアの最大値を要素とするベクターを返します。

MaxMagnitude(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとに大きな大きさを持つ計算を行います。

MaxMagnitudeNumber(Vector4, Vector4)

要素ごとに 2 つのベクトルを比較し、大きさが大きい計算を行い、入力が NaN場合はもう一方の値を返します。

MaxNative(Vector4, Vector4)

2 つのベクトルを比較し、 NaNNegativeZeroのプラットフォーム固有の動作を使用して、要素ごとにどちらが大きいかを判断します。

MaxNumber(Vector4, Vector4)

要素ごとに 2 つのベクトルを比較して、より大きい値を計算し、要素が NaN場合はもう一方の値を返します。

Min(Vector4, Vector4)

指定した 2 つのベクター内の要素の各ペアの最小値を要素とするベクターを返します。

MinMagnitude(Vector4, Vector4)

2 つのベクトルを比較して、要素ごとに大きさが小さい計算を行います。

MinMagnitudeNumber(Vector4, Vector4)

要素ごとに 2 つのベクトルを比較し、入力が NaN場合は、より小さい大きさを持ち、もう一方の値を返す計算を行います。

MinNative(Vector4, Vector4)

2 つのベクトルを比較し、 NaNNegativeZeroのプラットフォーム固有の動作を使用して、要素ごとにどちらが小さいかを判断します。

MinNumber(Vector4, Vector4)

要素ごとに 2 つのベクトルを比較し、小さい方を計算し、要素が NaN場合はもう一方の値を返します。

Multiply(Single, Vector4)

スカラー値に指定したベクターを乗算します。

Multiply(Vector4, Single)

ベクターに指定したスカラーを乗算します。

Multiply(Vector4, Vector4)

指定された 2 つのベクトル内の要素の各ペアの積である値を持つ新しいベクターを返します。

MultiplyAddEstimate(Vector4, Vector4, Vector4)

(left * right) + addendの推定値を計算します。

Negate(Vector4)

指定したベクターを否定します。

None(Vector4, Single)

ベクターの要素が特定の値と等しくないかどうかを判断します。

NoneWhereAllBitsSet(Vector4)

すべてのビットが設定されているベクターの要素がないかどうかを判断します。

Normalize(Vector4)

指定したベクトルと同じ方向を持ち、長さが 1 のベクターを返します。

OnesComplement(Vector4)

ベクトルの 1-補数を計算します。

RadiansToDegrees(Vector4)

指定されたベクトルをラジアンから度に変換します。

Round(Vector4, MidpointRounding)

指定した丸めモードを使用して、ベクター内の各要素を最も近い整数に丸めます。

Round(Vector4)

既定の丸めモード (ToEven) を使用して、ベクター内の各要素を最も近い整数に丸めます。

Shuffle(Vector4, Byte, Byte, Byte, Byte)

一連のインデックスを使用して入力ベクターから値を選択して、新しいベクターを作成します。

Sin(Vector4)

ベクトル内の各要素のサインを計算します。

SinCos(Vector4)

ベクトル内の各要素のサインとコサインを計算します。

SquareRoot(Vector4)

指定したベクターの各要素の平方根を要素とするベクターを返します。

Subtract(Vector4, Vector4)

最初のベクトルから 2 番目のベクトルを減算します。

Sum(Vector4)

ベクトル内のすべての要素の合計を計算します。

ToString()

既定の書式設定を使用して、現在のインスタンスの文字列形式を返します。

ToString(String, IFormatProvider)

指定した書式指定文字列を使用して個々の要素を書式設定し、指定した書式プロバイダーを使用してカルチャ固有の書式を定義する、現在のインスタンスの文字列形式を返します。

ToString(String)

指定した書式指定文字列を使用して個々の要素を書式設定する現在のインスタンスの文字列形式を返します。

Transform(Vector2, Matrix4x4)

指定した 4 x 4 行列で 2 次元ベクトルを変換します。

Transform(Vector2, Quaternion)

指定した四元数回転値によって 2 次元ベクトルを変換します。

Transform(Vector3, Matrix4x4)

指定した 4 x 4 行列で 3 次元ベクトルを変換します。

Transform(Vector3, Quaternion)

指定した四元数回転値によって 3 次元ベクトルを変換します。

Transform(Vector4, Matrix4x4)

指定した 4 x 4 行列で 4 次元ベクトルを変換します。

Transform(Vector4, Quaternion)

指定した四元数回転値によって 4 次元ベクトルを変換します。

Truncate(Vector4)

ベクター内の各要素を切り捨てます。

TryCopyTo(Span<Single>)

指定した Span<T>にベクターのコピーを試みます。 宛先スパンの長さは、少なくとも 4 である必要があります。

Xor(Vector4, Vector4)

2 つのベクトルの排他的または排他的を計算します。

演算子

名前 説明
Addition(Vector4, Vector4)

2 つのベクトルを一緒に追加します。

BitwiseAnd(Vector4, Vector4)

2 つのベクトルのビットごとの計算を行います。

BitwiseOr(Vector4, Vector4)

2 つのベクトルのビットごとのまたは 2 つのベクトルを計算します。

Division(Vector4, Single)

指定したベクターを、指定したスカラー値で除算します。

Division(Vector4, Vector4)

最初のベクトルを 2 番目のベクトルで除算します。

Equality(Vector4, Vector4)

指定した 2 つのベクトル内の要素の各ペアが等しいかどうかを示す値を返します。

ExclusiveOr(Vector4, Vector4)

2 つのベクトルの排他的または排他的を計算します。

Inequality(Vector4, Vector4)

指定した 2 つのベクトルが等しくないかどうかを示す値を返します。

LeftShift(Vector4, Int32)

ベクターの各要素を指定した量だけ左にシフトします。

Multiply(Single, Vector4)

指定したベクターでスカラー値を倍数化します。

Multiply(Vector4, Single)

指定したスカラー値で指定したベクターを倍数化します。

Multiply(Vector4, Vector4)

指定された 2 つのベクトル内の要素の各ペアの積である値を持つ新しいベクターを返します。

OnesComplement(Vector4)

ベクトルの 1-補数を計算します。

RightShift(Vector4, Int32)

ベクターの各要素を、指定した量だけ右にシフト (符号付き) します。

Subtraction(Vector4, Vector4)

最初のベクトルから 2 番目のベクトルを減算します。

UnaryNegation(Vector4)

指定したベクターを否定します。

UnaryPlus(Vector4)

指定されたベクターを変更せずに返します。

UnsignedRightShift(Vector4, Int32)

ベクターの各要素を、指定した量だけ右にシフト (符号なし) します。

拡張メソッド

名前 説明
AsPlane(Vector4)

Vector4を新しいPlaneとして再解釈します。

AsQuaternion(Vector4)

Vector4を新しいQuaternionとして再解釈します。

AsVector128(Vector4)

Vector4を新しいVector128<T>として再解釈します。

AsVector2(Vector4)

Vector4を新しいVector2として再解釈します。

AsVector3(Vector4)

Vector4を新しいVector3として再解釈します。

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> を作成します。

適用対象