このページでは

QPointF Class

QPointF クラスは、浮動小数点精度を用いて平面上の点を定義します。詳細...

ヘッダー: #include <QPointF>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

注:このクラスのすべての関数は再入可能である。

QPointF の比較

カテゴリ比較可能な型
等価性QPointF
等価性QPoint.

パブリック関数

QPointF()
QPointF(const QPoint &point)
QPointF(qreal xpos, qreal ypos)
bool isNull() const
qreal manhattanLength() const
qreal &rx()
qreal &ry()
void setX(qreal x)
void setY(qreal y)
CGPoint toCGPoint() const
QPoint toPoint() const
QPointF transposed() const
qreal x() const
qreal y() const
QPointF &operator*=(qreal factor)
QPointF &operator+=(const QPointF &point)
QPointF &operator-=(const QPointF &point)
QPointF &operator/=(qreal divisor)

静的パブリックメンバー

qreal dotProduct(const QPointF &p1, const QPointF &p2)
QPointF fromCGPoint(CGPoint point)
(since 6.8) bool qFuzzyCompare(const QPointF &p1, const QPointF &p2)
(since 6.8) bool qFuzzyIsNull(const QPointF &point)
bool operator!=(const QPointF &lhs, const QPointF &rhs)
QPointF operator*(const QPointF &point, qreal factor)
QPointF operator*(qreal factor, const QPointF &point)
QPointF operator+(const QPointF &point)
QPointF operator+(const QPointF &p1, const QPointF &p2)
QPointF operator-(const QPointF &p1, const QPointF &p2)
QPointF operator-(const QPointF &point)
QPointF operator/(const QPointF &point, qreal divisor)
QDataStream &operator<<(QDataStream &stream, const QPointF &point)
bool operator==(const QPointF &lhs, const QPointF &rhs)
QDataStream &operator>>(QDataStream &stream, QPointF &point)

詳細な説明

点は x 座標と y 座標によって指定され、これらは `x()` および `y()` 関数を使用して取得できます。点の座標は、精度を確保するために有限の浮動小数点数を使用して指定されます。isNull() 関数は、x と y の両方が 0.0 に設定されている場合、true を返します。座標は、setX() およびsetY() 関数、あるいは座標への参照を返す(直接操作を可能にする)rx() およびry() 関数を使用して設定(または変更)できます。

点p に対して、以下の記述はすべて同等です:

QPointF p;

p.setX(p.x() + 1.0);
p += QPointF(1.0, 0.0);
p.rx()++;

QPointFオブジェクトはベクトルとしても使用できます。加算と減算はベクトルと同様に定義されています(各成分が個別に加算されます)。また、QPointFオブジェクトは、int またはqreal で除算または乗算を行うこともできます。

さらに、QPointFクラスは、QPoint オブジェクトをQPointFオブジェクトに変換するコンストラクタと、この点の QPoint コピーを返す対応するtoPoint()関数を提供しています。最後に、QPointFオブジェクトはストリーム出力できるほか、比較することも可能です。

QPoint およびQPolygonFも参照してください 。

メンバ関数のドキュメント

[constexpr noexcept] QPointF::QPointF()

原点、すなわち座標 (0.0, 0.0) を持つ点を生成します

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

[constexpr noexcept] QPointF::QPointF(const QPoint &point)

指定されたpoint のコピーを作成します。

toPoint() およびQPoint::toPointF()も参照してください 。

[constexpr noexcept] QPointF::QPointF(qreal xpos, qreal ypos)

指定された座標 (xpos,ypos) を持つ点を生成します。

setX() およびsetY()も参照してください 。

[static constexpr] qreal QPointF::dotProduct(const QPointF &p1, const QPointF &p2)

QPointF p( 3.1, 7.1);
QPointF q(-1.0, 4.1);
qreal dotProduct = QPointF::dotProduct(p, q);   // dotProduct becomes 26.01

p1 とp2 の内積を返します。

[static noexcept] QPointF QPointF::fromCGPoint(CGPoint point)

CGPoint `point` から `QRectF ` を作成します。

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

[noexcept] bool QPointF::isNull() const

x座標とy座標の両方が0.0に設定されている場合(符号は無視する)、true を返します。それ以外の場合は、false を返します。

[constexpr] qreal QPointF::manhattanLength() const

x() およびy() の絶対値の和を返します。これは、従来、原点からその点までのベクトルの「マンハッタン距離」として知られています。

QPoint::manhattanLength()も参照してください 。

[constexpr noexcept] qreal &QPointF::rx()

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

参照を使用することで、xを直接操作することが可能になります。例えば:

QPointF p(1.1, 2.5);
p.rx()--;   // p becomes (0.1, 2.5)

x() およびsetX()も参照してください 。

[constexpr noexcept] qreal &QPointF::ry()

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

参照を使用することで、yを直接操作することが可能になります。例:

QPointF p(1.1, 2.5);
p.ry()++;   // p becomes (1.1, 3.5)

y() およびsetY()も参照してください 。

[constexpr noexcept] void QPointF::setX(qreal x)

この点のx座標を、指定された有限のx 座標に設定します。

x() およびsetY()も参照してください 。

[constexpr noexcept] void QPointF::setY(qreal y)

この点の y 座標を、指定された有限のy 座標に設定します。

y() およびsetX()も参照してください 。

[noexcept] CGPoint QPointF::toCGPoint() const

QPointF から CGPoint を作成します。

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

[constexpr] QPoint QPointF::toPoint() const

この点の座標を最も近い整数に丸め、丸められた座標を持つQPoint オブジェクトを返します。

QPointF() およびQPoint::toPointF()も参照してください 。

[constexpr noexcept] QPointF QPointF::transposed() const

x座標とy座標が入れ替わった座標を返します:

QPointF{1.0, 2.0}.transposed() // {2.0, 1.0}

x()、y()、setX()、およびsetY()も参照してください 。

[constexpr noexcept] qreal QPointF::x() const

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

setX() およびrx()も参照してください 。

[constexpr noexcept] qreal QPointF::y() const

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

setY() およびry()も参照してください 。

[constexpr] QPointF &QPointF::operator*=(qreal factor)

この点の座標に、指定された有限のfactor を乗算し、この点への参照を返します。例:

QPointF p(-1.1, 4.1);
p *= 2.5;    // p becomes (-2.75, 10.25)

operator/=()も参照してください 。

[constexpr] QPointF &QPointF::operator+=(const QPointF &point)

指定されたpoint をこのポイントに追加し、このポイントへの参照を返します。例:

QPointF p( 3.1, 7.1);
QPointF q(-1.0, 4.1);
p += q;    // p becomes (2.1, 11.2)

operator-=()も参照してください 。

[constexpr] QPointF &QPointF::operator-=(const QPointF &point)

指定されたpoint をこの点から差し引き、この点への参照を返します。例:

QPointF p( 3.1, 7.1);
QPointF q(-1.0, 4.1);
p -= q;    // p becomes (4.1, 3.0)

operator+=()も参照してください 。

[constexpr] QPointF &QPointF::operator/=(qreal divisor)

x と y の両方を指定されたdivisor で割り、その座標への参照を返します。例:

QPointF p(-2.75, 10.25);
p /= 2.5;           // p becomes (-1.1, 4.1)

divisor は 0 または NaN であってはなりません。

operator*=()も参照してください 。

関連する非メンバー関数

[constexpr noexcept, since 6.8] bool qFuzzyCompare(const QPointF &p1, const QPointF &p2)

p1 がp2 にほぼ等しい場合はtrue を返し、そうでない場合はfalse を返します。

この関数は Qt 6.8 で導入されました。

qFuzzyIsNullも参照してください 。

[constexpr noexcept, since 6.8] bool qFuzzyIsNull(const QPointF &point)

point が点(0.0, 0.0) に近似的に等しい場合、true を返します。

この関数は Qt 6.8 で導入されました。

qFuzzyCompareも参照してください 。

[constexpr noexcept] bool operator!=(const QPointF &lhs, const QPointF &rhs)

lhs がrhs と十分に異なる場合、true を返します。そうでない場合は、false を返します。

警告: この関数は 厳密な不等性をチェックせず、代わりにファジー比較を用いて点の座標を比較します。

qFuzzyCompareも参照してください 。

[constexpr] QPointF operator*(const QPointF &point, qreal factor)

指定されたpoint のコピーを、指定された有限なfactor を乗じたものを返します。

QPointF::operator*=()も参照してください 。

[constexpr] QPointF operator*(qreal factor, const QPointF &point)

指定されたpoint のコピーに、指定された有限なfactor を乗じたものを返します。

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

[constexpr] QPointF operator+(const QPointF &point)

point を変更せずに返します。

[constexpr] QPointF operator+(const QPointF &p1, const QPointF &p2)

指定された点p1 およびp2 の和を表すQPointF オブジェクトを返します。各成分は個別に加算されます。

QPointF::operator+=()も参照してください 。

[constexpr] QPointF operator-(const QPointF &p1, const QPointF &p2)

p2 からp1 を差し引いて形成された `QPointF ` オブジェクトを返します。各成分は個別に差し引かれます。

QPointF::operator-=()も参照してください 。

[constexpr] QPointF operator-(const QPointF &point)

指定されたpoint の各成分の符号を変更して構成されたQPointF オブジェクトを返します。

QPointF(0,0) - point と同等です。

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

[constexpr] QPointF operator/(const QPointF &point, qreal divisor)

指定されたpoint の各成分を、指定されたdivisor で割って形成されたQPointF オブジェクトを返します。

divisor は、0またはNaNであってはなりません。

QPointF::operator/=()も参照してください 。

QDataStream &operator<<(QDataStream &stream, const QPointF &point)

指定されたpoint を指定されたstream に書き込み、そのストリームへの参照を返します。

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

[constexpr noexcept] bool operator==(const QPointF &lhs, const QPointF &rhs)

lhs がrhs に近似的に等しい場合は `true ` を返し、そうでない場合は `false` を返します。

警告: この関数は厳密な 等価性をチェックしません。代わりに、点の座標を比較するためにファジー比較を使用します。

関連項目: qFuzzyCompare 。

QDataStream &operator>>(QDataStream &stream, QPointF &point)

指定されたstream から指定されたpoint へ1つのポイントを読み込み、そのストリームへの参照を返します。

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

© 2026 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.