QVector2D Class

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

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

パブリック関数

QVector2D()
QVector2D(QPoint point)
QVector2D(QPointF point)
QVector2D(QVector3D vector)
QVector2D(QVector4D vector)
QVector2D(float xpos, float ypos)
float distanceToLine(QVector2D point, QVector2D direction) const
float distanceToPoint(QVector2D point) const
bool isNull() const
float length() const
float lengthSquared() const
void normalize()
QVector2D normalized() const
void setX(float x)
void setY(float y)
QPoint toPoint() const
QPointF toPointF() const
QVector3D toVector3D() const
QVector4D toVector4D() const
float x() const
float y() const
QVariant operator QVariant() const
QVector2D &operator*=(QVector2D vector)
QVector2D &operator*=(float factor)
QVector2D &operator+=(QVector2D vector)
QVector2D &operator-=(QVector2D vector)
QVector2D &operator/=(QVector2D vector)
QVector2D &operator/=(float divisor)
float &operator[](int i)
float operator[](int i) const

静的パブリックメンバ

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

詳細説明

ベクトルは、2D表現と描画の主要な構成要素の1つである。これらは2つの有限浮動小数点座標で構成され、伝統的にxとyと呼ばれている。

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

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

メンバ関数ドキュメント

[constexpr noexcept] QVector2D::QVector2D()

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

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

2Dpoint から x 座標と y 座標を持つベクトルを構築する。

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

2Dpoint から x 座標と y 座標を持つベクトルを構築する。

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

3Dvector から x 座標と y 座標を持つベクトルを構築します。vector の z 座標は削除されます。

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

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

3Dvector から x 座標と y 座標を持つベクトルを構築します。vector の z 座標と w 座標は削除されます。

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

[constexpr noexcept] QVector2D::QVector2D(float xpos, float ypos)

座標 (xpos,ypos) を持つベクトルを構築します。両方の座標は有限でなければなりません。

[noexcept] float QVector2D::distanceToLine(QVector2D point, QVector2D direction) const

この頂点が、point と単位ベクトルdirection で定義される直線からの距離を返します。

direction が NULL ベクトルの場合、それは直線を定義しません。その場合、point からこの頂点までの距離が返される。

distanceToPoint()も参照

[noexcept] float QVector2D::distanceToPoint(QVector2D point) const

この頂点から、頂点point で定義される点までの距離を返す。

distanceToLine()も参照

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

v1v2 のドット積を返します。

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

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

[noexcept] float QVector2D::length() const

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

lengthSquared() およびnormalized()も参照してください

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

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

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

[noexcept] void QVector2D::normalize()

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

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

[noexcept] QVector2D QVector2D::normalized() const

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

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

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

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

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

x() およびsetY() も参照

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

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

y() およびsetX()も参照

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

この 2D ベクトルのQPoint 形式の座標を返します。各座標は、最も近い整数に丸められます。

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

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

この 2D ベクトルのQPointF 形式を返します。

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

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

z 座標をゼロに設定した、この 2D ベクトルの 3D フォームを返します。

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

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

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

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

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

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

setX() およびy()も参照

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

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

setY() およびx()も参照

QVariant QVector2D::operator QVariant() const

2D ベクトルをQVariant として返します。

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

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

注意: これは,このベクトルとvector との内積ではありません(このベクトルの成分は,このベクトルとvector との内積に加算されます).

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

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

このベクトルの座標に与えられた有限値factor を掛け合わせ、このベクトルへの参照を返します。

operator/=() およびoperator*()も参照して ください。

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

与えられたvector をこのベクトルに加算し、このベクトルへの参照を返します。

operator-=()も参照

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

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

operator+=()も参照

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

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

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

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

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

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

operator*=()も参照

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

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

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

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

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

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

関連する非メンバー

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

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

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

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

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

v1 の各成分とv2 の対応する成分を掛け合わせたQVector2D オブジェクトを返す。

注意: これはv1v2 の掛け合わせではありません。(その成分は、v1v2 のドット積に加算される)。

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

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

与えられたvector のコピーに、与えられた有限のfactor を掛けたものを返す。

QVector2D::operator*=()も参照

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

与えられたvector のコピーに、与えられた有限のfactor を掛けたものを返す。

QVector2D::operator*=()も参照

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

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

QVector2D::operator+=() も参照

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

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

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

[constexpr noexcept] QVector2D operator-(QVector2D vector)

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

与えられたvector の各要素の符号を変更したQVector2D オブジェクトを返す。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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