QVector4D Class

QVector4Dクラスは、4次元空間のベクトルまたは頂点を表します。詳細...

Header: #include <QVector4D>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

パブリック関数

QVector4D()
QVector4D(QPoint point)
QVector4D(QPointF point)
QVector4D(QVector2D vector)
QVector4D(QVector3D vector)
QVector4D(QVector3D vector, float wpos)
QVector4D(QVector2D vector, float zpos, float wpos)
QVector4D(float xpos, float ypos, float zpos, float wpos)
bool isNull() const
float length() const
float lengthSquared() const
void normalize()
QVector4D normalized() const
void setW(float w)
void setX(float x)
void setY(float y)
void setZ(float z)
QPoint toPoint() const
QPointF toPointF() const
QVector2D toVector2D() const
QVector2D toVector2DAffine() const
QVector3D toVector3D() const
QVector3D toVector3DAffine() const
float w() const
float x() const
float y() const
float z() const
QVariant operator QVariant() const
QVector4D &operator*=(QVector4D vector)
QVector4D &operator*=(float factor)
QVector4D &operator+=(QVector4D vector)
QVector4D &operator-=(QVector4D vector)
QVector4D &operator/=(QVector4D vector)
QVector4D &operator/=(float divisor)
float &operator[](int i)
float operator[](int i) const

静的パブリックメンバー

float dotProduct(QVector4D v1, QVector4D v2)
bool qFuzzyCompare(QVector4D v1, QVector4D v2)
bool operator!=(QVector4D v1, QVector4D v2)
QVector4D operator*(QVector4D v1, QVector4D v2)
QVector4D operator*(QVector4D vector, float factor)
QVector4D operator*(float factor, QVector4D vector)
QVector4D operator+(QVector4D v1, QVector4D v2)
QVector4D operator-(QVector4D v1, QVector4D v2)
QVector4D operator-(QVector4D vector)
QVector4D operator/(QVector4D vector, QVector4D divisor)
QVector4D operator/(QVector4D vector, float divisor)
QDataStream &operator<<(QDataStream &stream, QVector4D vector)
bool operator==(QVector4D v1, QVector4D v2)
QDataStream &operator>>(QDataStream &stream, QVector4D &vector)

詳細説明

ベクトルは、3D空間の4Dアフィン表現の主要な構成要素の1つです。ベクトルは4つの有限浮動小数点座標で構成され、伝統的にx, y, z, wと呼ばれています。

QVector4Dクラスは、4D空間の頂点を表現するためにも使用できます。したがって、頂点クラスを別に用意する必要はありません。

QQuaternion,QVector2D,QVector3Dも参照して ください。

メンバ関数ドキュメント

[constexpr noexcept] QVector4D::QVector4D()

ヌルベクトル、すなわち座標(0, 0, 0, 0)を持つベクトルを構築する。

[explicit constexpr noexcept] QVector4D::QVector4D(QPoint point)

2Dpoint から x 座標と y 座標、および z 座標と w 座標が 0 のベクトルを構築します。

[explicit constexpr noexcept] QVector4D::QVector4D(QPointF point)

2Dpoint から x 座標と y 座標、z 座標と w 座標が 0 のベクトルを構築します。

[explicit constexpr noexcept] QVector4D::QVector4D(QVector2D vector)

指定された 2Dvector から 4D ベクトルを構築します。z 座標と w 座標は 0 に設定される。

toVector2D()も参照

[explicit constexpr noexcept] QVector4D::QVector4D(QVector3D vector)

指定された 3Dvector から 4 次元ベクトルを構築する。w 座標はゼロに設定されます。

toVector3D() も参照して ください。

[constexpr noexcept] QVector4D::QVector4D(QVector3D vector, float wpos)

指定された 3Dvector から 4 次元ベクトルを構築します。w 座標はwpos に設定される。

toVector3D()も参照

[constexpr noexcept] QVector4D::QVector4D(QVector2D vector, float zpos, float wpos)

指定された 2Dvector から 4 次元ベクトルを構築します。z 座標と w 座標はそれぞれzposwpos に設定され、それぞれ有限でなければならない。

toVector2D()も参照

[constexpr noexcept] QVector4D::QVector4D(float xpos, float ypos, float zpos, float wpos)

座標 (xpos,ypos,zpos,wpos) を持つベクトルを構築します。すべてのパラメータは有限でなければならない。

[static constexpr noexcept] float QVector4D::dotProduct(QVector4D v1, QVector4D v2)

v1v2 の内積を返します。

[constexpr noexcept] bool QVector4D::isNull() const

x, y, z, w 座標が 0.0 に設定されている場合はtrue を返し、そうでない場合はfalse を返す。

[noexcept] float QVector4D::length() const

原点からのベクトルの長さを返します。

lengthSquared() およびnormalized()も参照

[constexpr noexcept] float QVector4D::lengthSquared() const

quared関数は、原点からのベクトルの長さの2乗を返します。これは、ベクトルとそれ自身との内積と等価です。

length() およびdotProduct()も参照

[noexcept] void QVector4D::normalize()

現在のベクトルを正規化します。このベクトルが NULL ベクトルであったり、ベクトルの長さが 1 に非常に近かったりする場合は、何も起こりません。

length() およびnormalized()も参照

[noexcept] QVector4D QVector4D::normalized() const

このベクトルの正規化された単位ベクトル形式を返します。

このベクトルが NULL の場合、NULL ベクトルが返されます。ベクトルの長さが 1 に非常に近い場合、ベクトルはそのまま返されます。そうでない場合は、長さ 1 の正規化されたベクトルが返されます。

length() およびnormalize()も参照

[constexpr noexcept] void QVector4D::setW(float w)

この点の w 座標を、与えられた有限座標w に設定する。

w()、setX()、setY() およびsetZ() も参照

[constexpr noexcept] void QVector4D::setX(float x)

この点の x 座標を、与えられた有限のx 座標に設定する。

x()、setY()、setZ()、およびsetW()も参照

[constexpr noexcept] void QVector4D::setY(float y)

この点の y 座標を、与えられた有限のy 座標に設定します。

y()、setX()、setZ()、およびsetW()も参照

[constexpr noexcept] void QVector4D::setZ(float z)

この点の z 座標を、与えられた有限のz 座標に設定します。

z()、setX()、setY() およびsetW()も参照

[constexpr noexcept] QPoint QVector4D::toPoint() const

この 4 次元ベクトルのQPoint 形式を返します。z 座標と w 座標は削除される。x 座標と y 座標は、最も近い整数に丸められます。

toPointF() およびtoVector2D()も参照

[constexpr noexcept] QPointF QVector4D::toPointF() const

QPointF 形式の 4 次元ベクトルを返します。z 座標と w 座標は削除されます。

toPoint() およびtoVector2D()も参照

[constexpr noexcept] QVector2D QVector4D::toVector2D() const

z 座標と w 座標を除いた、この 4 次元ベクトルの 2D ベクトル形式を返します。

toVector2DAffine()、toVector3D()、toPoint() も参照

[constexpr noexcept] QVector2D QVector4D::toVector2DAffine() const

x 座標と y 座標を w 座標で割り、z 座標を除いた 4 次元ベクトルの 2D ベクトル形式を返します。w が 0 の場合は null ベクトルを返します。

toVector2D()、toVector3DAffine()、toPoint()も参照

[constexpr noexcept] QVector3D QVector4D::toVector3D() const

この 4 次元ベクトルを w 座標を除いた 3 次元ベクトル形式で返します。

toVector3DAffine()、toVector2D()、toPoint()も参照

[constexpr noexcept] QVector3D QVector4D::toVector3DAffine() const

x, y, z 座標を w 座標で割った 4 次元ベクトルの 3 次元ベクトル形式を返す。w が 0 の場合は null ベクトルを返します。

toVector3D()、toVector2DAffine()、toPoint()も参照

[constexpr noexcept] float QVector4D::w() const

この点の w 座標を返します。

setW()、x()、y()、z()も参照

[constexpr noexcept] float QVector4D::x() const

この点の x 座標を返します。

setX()、y()、z()、w()も参照

[constexpr noexcept] float QVector4D::y() const

この点の y 座標を返します。

setY()、x()、z()、w() も参照

[constexpr noexcept] float QVector4D::z() const

この点の z 座標を返します。

setZ()、x()、y()、w()も参照

QVariant QVector4D::operator QVariant() const

QVariant として 4 次元ベクトルを返します。

[constexpr noexcept] QVector4D &QVector4D::operator*=(QVector4D vector)

このベクトルの各成分をvector の対応する成分で乗算し、このベクトルへの参照を返します。

operator/=() およびoperator*()も参照

[constexpr noexcept] QVector4D &QVector4D::operator*=(float factor)

このベクトルの座標に、与えられた有限のfactor を乗算し、このベクトルへの参照を返します。

operator/=() およびoperator*()も参照

[constexpr noexcept] QVector4D &QVector4D::operator+=(QVector4D vector)

与えられたvector をこの vector に追加し、この vector への参照を返します。

operator-=()も参照

[constexpr noexcept] QVector4D &QVector4D::operator-=(QVector4D vector)

このベクトルから指定されたvector を減算し、このベクトルへの参照を返します。

operator+=()も参照

[constexpr] QVector4D &QVector4D::operator/=(QVector4D vector)

このベクトルの各成分をvector の対応する成分で割り、このベクトルへの参照を返します。

vector には、ゼロまたは NaN のいずれの成分もあってはならない。

operator*=() およびoperator/()も参照

[constexpr] QVector4D &QVector4D::operator/=(float divisor)

このベクトルの座標を、与えられたdivisor で割り、このベクトルへの参照を返す。divisor はゼロまたは NaN であってはならない。

operator*=()も参照

[constexpr] float &QVector4D::operator[](int i)

修正可能な参照として、インデックス位置i にあるベクトルの成分を返します。

i はベクトルの有効なインデックス位置でなければならない(すなわち、0 <= < 4)。i

[constexpr] float QVector4D::operator[](int i) const

インデックス位置i にあるベクトルの成分を返します。

i はベクトル内の有効なインデックス位置でなければなりません (すなわち、0 <= < 4)。i

関連する非メンバー

[noexcept] bool qFuzzyCompare(QVector4D v1, QVector4D v2)

v1v2 が等しい場合はtrue を返し、浮動小数点比較のための小さなファジー要素を許容します。

[constexpr noexcept] bool operator!=(QVector4D v1, QVector4D v2)

v1v2 と等しくない場合はtrue を返し、そうでない場合はfalse を返す。この演算子は正確な浮動小数点比較を使用する。

[constexpr noexcept] QVector4D operator*(QVector4D v1, QVector4D v2)

v1 の各成分にv2 の対応する成分を乗算したQVector4D オブジェクトを返します。

注意: これはv1v2 の掛け算ではない。(その成分はv1v2 のドット積に加算される)。

QVector4D::operator*=()も参照のこと

[constexpr noexcept] QVector4D operator*(QVector4D vector, float factor)

指定されたvector に指定されたfactor を掛けたものを返す。

QVector4D::operator*=()も参照

[constexpr noexcept] QVector4D operator*(float factor, QVector4D vector)

指定されたvector のコピーに、指定されたfactor を乗算した値を返します。

QVector4D::operator*=()も参照

[constexpr noexcept] QVector4D operator+(QVector4D v1, QVector4D v2)

与えられたベクトルv1v2 の和であるQVector4D オブジェクトを返します。

QVector4D::operator+=() も参照

[constexpr noexcept] QVector4D operator-(QVector4D v1, QVector4D v2)

v1 からv2 を減算したQVector4D オブジェクトを返す。

QVector4D::operator-=()も参照の こと。

[constexpr noexcept] QVector4D operator-(QVector4D vector)

これはオーバーロードされた関数である。

指定されたvector の3成分すべての符号を変更したQVector4D オブジェクトを返す。

QVector4D(0,0,0,0) - vector と同等。

[constexpr] QVector4D operator/(QVector4D vector, QVector4D divisor)

与えられたvector の各成分を、与えられたdivisor の対応する成分で割ったQVector4D オブジェクトを返す。

divisor は、ゼロまたは NaN の成分を持たなければならない。

QVector4D::operator/=()も参照のこと

[constexpr] QVector4D operator/(QVector4D vector, float divisor)

与えられたvector の各成分を、与えられたdivisor で割ったQVector4D オブジェクトを返す。

divisor はゼロまたは NaN であってはならない。

QVector4D::operator/=()も参照の こと。

QDataStream &operator<<(QDataStream &stream, QVector4D vector)

与えられたvector を与えられたstream に書き込み、そのストリームへの参照を返します。

Qt データ型のシリアライズ」も参照して ください。

[constexpr noexcept] bool operator==(QVector4D v1, QVector4D v2)

v1v2 と等しい場合はtrue を返し、そうでない場合はfalse を返します。この演算子は、正確な浮動小数点比較を使用します。

QDataStream &operator>>(QDataStream &stream, QVector4D &vector)

与えられたstream から与えられたvector に 4 次元ベクトルを読み込み、ストリームへの参照を返します。

Qt データ型のシリアライズ」も参照してください

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。