Vector4
四次元のダブル精密浮動小数点数で4Dベクトルを表現します。
実装: IEquatable<Vector4>
コンストラクター
public Vector4(double x, double y, double z, double w)
vector4 = Vector4(x, y, z, w)
新しいVector4d を構成します。
- x
- ベクトル4dのxコンポーネント。
- y
- y コンポーネントの Vector4d 。
- z
- z コンポーネントの Vector4d です。
- w
- ベクトル4dのwコンポーネント。
public Vector4(Vector2 v)
vector4 = Vector4(v)
与えられたVector2dから新しいVector4dを構成します。
- v
- コンポーネントをコピーするVector2d。
public Vector4(Vector3 v)
vector4 = Vector4(v)
与えられたVector3dから新しいVector4dを構成します。
- v
- コンポーネントをコピーするVector3d。
public Vector4(Vector3 v, double w)
vector4 = Vector4(v, w)
指定したVector3dとwコンポーネントから新しいVector4dを構成します。
- v
- コンポーネントをコピーするVector3d。
- w
- 新しいVector4のwコンポーネント。
public Vector4(Vector4 v)
vector4 = Vector4(v)
与えられたVector4dから新しいVector4dを構成します。
- v
- コンポーネントをコピーするVector4d。
プロパティ
public double LengthSquared { get; }
value = vector4.LengthSquared
ベクトルの長さ(大きさ)の正方形を取得します。
public Vector2 Xy { get; set; }
value = vector4.Xy
vector4.Xy = value
このインスタンスのXとYコンポーネントでOpenTK.Vector2dを受け取り、または設定します。
public Vector3 Xyz { get; set; }
value = vector4.Xyz
vector4.Xyz = value
このインスタンスのX、Y、ZコンポーネントでOpenTK.Vector3dを受け取り、または設定します。
メソッド
public static void Add(Vector4 a, Vector4 b, Vector4 result)
Vector4.Add(a, b, result)
2つのベクトルを追加します。
- a
- 左のオペランド。
- b
- 右オペランド。
- result
- 業務実績
public static Vector4 Add(Vector4 a, Vector4 b)
result = Vector4.Add(a, b)
2つのベクトルを追加します。
- a
- 左のオペランド。
- b
- 右オペランド。
戻り値: 業務実績
public static void BaryCentric(Vector4 a, Vector4 b, Vector4 c, double u, double v, Vector4 result)
Vector4.BaryCentric(a, b, c, u, v, result)
バリセントリック座標を用いた3ベクトルをインターポレート
- a
- 第一入力ベクトル。
- b
- 第二入力ベクトル。
- c
- 第三入力ベクトル。
- u
- 第一線のバリセントリック座標。
- v
- 第二のバリセントリック座標。
- result
- 出力ベクトル。 u=v=0、b が u=1、v=0、c が u=0、v=1 のとき、 線形の組み合わせ、b、c がなければ
public static Vector4 BaryCentric(Vector4 a, Vector4 b, Vector4 c, double u, double v)
result = Vector4.BaryCentric(a, b, c, u, v)
バリセントリック座標を用いた3ベクトルをインターポレート
- a
- 最初の入力ベクトル
- b
- 第二入力ベクトル
- c
- 第三入力ベクトル
- u
- 第一線 バリセントリック座標
- v
- 第二のバリセントリック座標
戻り値: u=v=0 時 b u=1,v=0,c 時 u=0,v=1,a,b,c の線形組み合わせ
public static void Clamp(Vector4 vec, Vector4 min, Vector4 max, Vector4 result)
Vector4.Clamp(vec, min, max, result)
ベクトルを指定した最小限かつ最大ベクトルに固定する
- vec
- 入力ベクトル
- min
- 最小ベクトル
- max
- 最大ベクトル
- result
- クランプされたベクトル
public static Vector4 Clamp(Vector4 vec, Vector4 min, Vector4 max)
result = Vector4.Clamp(vec, min, max)
ベクトルを指定した最小限かつ最大ベクトルに固定する
- vec
- 入力ベクトル
- min
- 最小ベクトル
- max
- 最大ベクトル
戻り値: クランプされたベクトル
public static Vector4 Divide(Vector4 vector, double scale)
result = Vector4.Divide(vector, scale)
スカラーでベクトルを分割します。
- vector
- 左のオペランド。
- scale
- 右オペランド。
戻り値: 運転結果
public static void Divide(Vector4 vector, double scale, Vector4 result)
Vector4.Divide(vector, scale, result)
スカラーでベクトルを分割します。
- vector
- 左のオペランド。
- scale
- 右オペランド。
- result
- 運転結果
public static Vector4 Divide(Vector4 vector, Vector4 scale)
result = Vector4.Divide(vector, scale)
ベクトル(スケール)のコンポーネントによってベクトルを分割します。
- vector
- 左のオペランド。
- scale
- 右オペランド。
戻り値: 運転結果
public static void Divide(Vector4 vector, Vector4 scale, Vector4 result)
Vector4.Divide(vector, scale, result)
ベクトル(スケール)のコンポーネントによってベクトルを分割します。
- vector
- 左のオペランド。
- scale
- 右オペランド。
- result
- 運転結果
public static void Dot(Vector4 left, Vector4 right, double result)
Vector4.Dot(left, right, result)
2つのベクトルのドット製品を計算する
- left
- ファースト・オペランド
- right
- 第2オペランド
- result
- 2つの入力の点プロダクト
public static double Dot(Vector4 left, Vector4 right)
result = Vector4.Dot(left, right)
2つのベクトルのドット製品を計算する
- left
- ファースト・オペランド
- right
- 第2オペランド
戻り値: 2つの入力の点プロダクト
public bool Equals(Vector4 other)
result = vector4.Equals(other)
現在のベクトルが別のベクトルと等しいかどうかを示します。
- other
- このベクトルと比べるベクトル。
戻り値: 現行のベクトルがベクトルパラメーターと等しい場合、true です。そうしないと false です。
public override bool Equals(object obj)
result = vector4.Equals(obj)
このインスタンスと指定されたオブジェクトが等しいかどうかを指示します。
- obj
- 比較するオブジェクト。
戻り値: インスタンスが等しい場合、true です。そうしないと false です。
public override int GetHashCode()
result = vector4.GetHashCode()
このインスタンスのハッシュコードを返します。
戻り値: このインスタンスのハッシュコードをSystem.Int32に含める。
public static Vector4 Lerp(Vector4 a, Vector4 b, double blend)
result = Vector4.Lerp(a, b, blend)
ベクトルを与えられた2の線形ブレンドである新しいベクトルを返します
- a
- 最初の入力ベクトル
- b
- 第二入力ベクトル
- blend
- ブレンド係数。 ブレンド=0 時、b のときのブレンド=1 。
戻り値: ときのブレンド=0、b ときのブレンド=1、および線形組合せはそうでなければ
public static void Lerp(Vector4 a, Vector4 b, double blend, Vector4 result)
Vector4.Lerp(a, b, blend, result)
ベクトルを与えられた2の線形ブレンドである新しいベクトルを返します
- a
- 最初の入力ベクトル
- b
- 第二入力ベクトル
- blend
- ブレンド係数。 ブレンド=0 時、b のときのブレンド=1 。
- result
- ときのブレンド=0、b ときのブレンド=1、および線形組合せはそうでなければ
public static void Max(Vector4 a, Vector4 b, Vector4 result)
Vector4.Max(a, b, result)
コンポーネントを2つのベクトルの最大の計算
- a
- ファースト・オペランド
- b
- 第2オペランド
- result
- コンポーネント単位で最大
public static Vector4 Max(Vector4 a, Vector4 b)
result = Vector4.Max(a, b)
コンポーネントを2つのベクトルの最大の計算
- a
- ファースト・オペランド
- b
- 第2オペランド
戻り値: コンポーネント単位で最大
public static Vector4 Min(Vector4 a, Vector4 b)
result = Vector4.Min(a, b)
コンポーネント単位の最小値の2つのベクトルを計算する
- a
- ファースト・オペランド
- b
- 第2オペランド
戻り値: コンポーネント単位の最小値
public static void Min(Vector4 a, Vector4 b, Vector4 result)
Vector4.Min(a, b, result)
コンポーネント単位の最小値の2つのベクトルを計算する
- a
- ファースト・オペランド
- b
- 第2オペランド
- result
- コンポーネント単位の最小値
public static Vector4 Multiply(Vector4 vector, double scale)
result = Vector4.Multiply(vector, scale)
スカラーでベクトルをマルチプライズします。
- vector
- 左のオペランド。
- scale
- 右オペランド。
戻り値: 運転結果
public static void Multiply(Vector4 vector, double scale, Vector4 result)
Vector4.Multiply(vector, scale, result)
スカラーでベクトルをマルチプライズします。
- vector
- 左のオペランド。
- scale
- 右オペランド。
- result
- 運転結果
public static Vector4 Multiply(Vector4 vector, Vector4 scale)
result = Vector4.Multiply(vector, scale)
ベクトル(スケール)をコンポーネント別にベクトルをマルチプライズします。
- vector
- 左のオペランド。
- scale
- 右オペランド。
戻り値: 運転結果
public static void Multiply(Vector4 vector, Vector4 scale, Vector4 result)
Vector4.Multiply(vector, scale, result)
ベクトル(スケール)のコンポーネントによってベクトルを多重化します。
- vector
- 左のオペランド。
- scale
- 右オペランド。
- result
- 運転結果
public static Vector4 Normalize(Vector4 vec)
result = Vector4.Normalize(vec)
ベクトルを単位長さにスケール
- vec
- 入力ベクトル
戻り値: 正規化ベクトル
public static void Normalize(Vector4 vec, Vector4 result)
Vector4.Normalize(vec, result)
ベクトルを単位長さにスケール
- vec
- 入力ベクトル
- result
- 正規化ベクトル
public static void NormalizeFast(Vector4 vec, Vector4 result)
Vector4.NormalizeFast(vec, result)
ベクトルを約単位の長さにスケールアップ
- vec
- 入力ベクトル
- result
- 正規化ベクトル
public static Vector4 NormalizeFast(Vector4 vec)
result = Vector4.NormalizeFast(vec)
ベクトルを約単位の長さにスケールアップ
- vec
- 入力ベクトル
戻り値: 正規化ベクトル
public static Vector4 op_Addition(Vector4 left, Vector4 right)
result = Vector4.op_Addition(left, right)
2つのインスタンスを追加します。
- left
- 最初のインスタンス。
- right
- 2番目のインスタンス。
戻り値: 計算の結果。
public static Vector4 op_Division(Vector4 vec, double scale)
result = Vector4.op_Division(vec, scale)
scalar でインスタンスを分割します。
- vec
- インスタンス。
- scale
- スカラー
戻り値: 計算の結果。
public static bool op_Equality(Vector4 left, Vector4 right)
result = Vector4.op_Equality(left, right)
平等のための2つのインスタンスを比較します。
- left
- 最初のインスタンス。
- right
- 2番目のインスタンス。
戻り値: 真、左が右に等しい場合、そうでなければfalse。
public static bool op_Inequality(Vector4 left, Vector4 right)
result = Vector4.op_Inequality(left, right)
不平等のための2つのインスタンスを比較します。
- left
- 最初のインスタンス。
- right
- 2番目のインスタンス。
戻り値: 本当は、左が右折しなければ、そうでなければ偽りはそうではありません。
public static Vector4 op_Multiply(double scale, Vector4 vec)
result = Vector4.op_Multiply(scale, vec)
scalar でインスタンスをマルチプライズします。
- scale
- スカラー
- vec
- インスタンス。
戻り値: 計算の結果。
public static Vector4 op_Multiply(Vector4 vec, double scale)
result = Vector4.op_Multiply(vec, scale)
scalar でインスタンスをマルチプライズします。
- vec
- インスタンス。
- scale
- スカラー
戻り値: 計算の結果。
public static Vector4 op_Subtraction(Vector4 left, Vector4 right)
result = Vector4.op_Subtraction(left, right)
2つのインスタンスを割込みます。
- left
- 最初のインスタンス。
- right
- 2番目のインスタンス。
戻り値: 計算の結果。
public static Vector4 op_UnaryNegation(Vector4 vec)
result = Vector4.op_UnaryNegation(vec)
インスタンスをネゲートします。
- vec
- インスタンス。
戻り値: 計算の結果。
public static Vector4 Subtract(Vector4 a, Vector4 b)
result = Vector4.Subtract(a, b)
別のベクトルから1つのベクトルを抽出する
- a
- ファースト・オペランド
- b
- 第2オペランド
戻り値: 減算の結果
public static void Subtract(Vector4 a, Vector4 b, Vector4 result)
Vector4.Subtract(a, b, result)
別のベクトルから1つのベクトルを抽出する
- a
- ファースト・オペランド
- b
- 第2オペランド
- result
- 減算の結果
public string ToString(string format)
result = vector4.ToString(format)
現行のVector4dを表すSystem.Stringを返し、各要素をフォーマットでフォーマットします。
- format
public override string ToString()
result = vector4.ToString()
現行のVector4dを表すSystem.Stringを返します。
public static Vector4 Transform(Vector4 vec, Matrix4X4 mat)
result = Vector4.Transform(vec, mat)
与えられたマトリックスによってベクトルを変換
- vec
- ベクトルを変換する
- mat
- 目的の変革
戻り値: 変換されたベクトル
public static void Transform(Vector4 vec, Matrix4X4 mat, Vector4 result)
Vector4.Transform(vec, mat, result)
与えられたマトリックスによってベクトルを変換
- vec
- ベクトルを変換する
- mat
- 目的の変革
- result
- 変換されたベクトル
public static Vector4 Transform(Vector4 vec, Quaternion quat)
result = Vector4.Transform(vec, quat)
四方回転でベクトルを変換します。
- vec
- ベクトルを変換する。
- quat
- ベクトルを回転させるための式。
戻り値: 動作の結果。
public static void Transform(Vector4 vec, Quaternion quat, Vector4 result)
Vector4.Transform(vec, quat, result)
四方回転でベクトルを変換します。
- vec
- ベクトルを変換する。
- quat
- ベクトルを回転させるための式。
- result
- 動作の結果。
フィールド
public static readonly int SizeInBytes
value = Vector4.SizeInBytes
バイトのVector4d structのサイズを定義します。