QVector4D Class

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

ヘッダー #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クラスは、4次元空間の頂点を表現するためにも使用できます。したがって、頂点クラスを別に用意する必要はありません。

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 から 4 次元ベクトルを構築する。z 座標と w 座標はゼロに設定される。

toVector2D()も参照

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

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

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

SquaredLength関数は、原点からのベクトルの長さの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

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

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

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

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

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

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

この 4 次元ベクトルの z 座標と w 座標を除いた 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 座標を除いた 3D ベクトル形式を返します。

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

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

[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)

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

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

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

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

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

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

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

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.