QValue3DAxisFormatter Class

QValue3DAxisFormatter クラスは、値軸フォーマッタの基本クラスです。詳細...

ヘッダー #include <QValue3DAxisFormatter>
CMake: find_package(Qt6 REQUIRED COMPONENTS DataVisualization)
target_link_libraries(mytarget PRIVATE Qt6::DataVisualization)
qmake: QT += datavisualization
以来:QtDataVisualization 1.1
QML で: ValueAxis3DFormatter
を継承: QObject
継承元:

QLogValue3DAxisFormatter

パブリック関数

QValue3DAxisFormatter(QObject *parent = nullptr)
virtual ~QValue3DAxisFormatter()

保護された関数

bool allowNegatives() const
bool allowZero() const
QValue3DAxis *axis() const
virtual QValue3DAxisFormatter *createNewInstance() const
QList<float> &gridPositions() const
QList<float> &labelPositions() const
QStringList &labelStrings() const
QLocale locale() const
void markDirty(bool labelsChange = false)
virtual void populateCopy(QValue3DAxisFormatter &copy) const
virtual float positionAt(float value) const
virtual void recalculate()
void setAllowNegatives(bool allow)
void setAllowZero(bool allow)
void setLocale(const QLocale &locale)
virtual QString stringForValue(qreal value, const QString &format) const
QList<float> &subGridPositions() const
virtual float valueAt(float position) const

詳細説明

このクラスは、線形値3D軸のフォーマットルールを提供します。カスタムの値軸を実装したい場合は、このクラスをサブクラス化します。

ベース・クラスは、コンストラクタとデストラクタ以上のパブリック API を持っていません。これは、内部的にのみ使用されることを意図しています。ただし、サブクラスは必要に応じてパブリック・プロパティを実装できます。

QValue3DAxis およびQLogValue3DAxisFormatterも参照してください

メンバ関数ドキュメント

[explicit] QValue3DAxisFormatter::QValue3DAxisFormatter(QObject *parent = nullptr)

新しい値 3D 軸フォーマ ッ タ を、 オプシ ョ ンの親parent で構築 し ます。

[virtual noexcept] QValue3DAxisFormatter::~QValue3DAxisFormatter()

値 3D 軸フォーマッタを削除する。

[protected] bool QValue3DAxisFormatter::allowNegatives() const

負の値が親軸に対して有効な値である場合、true を返します。デフォルトの実装では、常にtrue を返します。

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

[protected] bool QValue3DAxisFormatter::allowZero() const

ゼロが親軸の有効な値である場合、true を返します。デフォルトの実装では、常にtrue を返します。

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

[protected] QValue3DAxis *QValue3DAxisFormatter::axis() const

親軸を返します。スレッド化されたレンダラーを使用する環境でスレッドの安全性を維持するために、親軸にはrecalculate() メソッドでのみアクセスする必要があります。

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

[virtual protected] QValue3DAxisFormatter *QValue3DAxisFormatter::createNewInstance() const

新しい空の値の 3D 軸フォーマッタを作成します。サブクラスで再実装する必要があります。

新しいフォーマッタを返します。レンダラーはこのメソッドを使用してフォーマッターのコピーをキャッシュします。新しいコピーの所有権は呼び出し元に移されます。

[protected] QList<float> &QValue3DAxisFormatter::gridPositions() const

正規化されたグリッド線位置の配列への参照を返します。デフォルトの配列サイズは、親軸のセグメントカウントに 1 を足した値ですが、recalculate() メソッドのサブクラス化された実装では、配列のサイズを変更することができます。値は、0.0 (最小値) と1.0 (最大値) の間でなければなりません。

QValue3DAxis::segmentCount およびrecalculate()も参照してください

[protected] QList<float> &QValue3DAxisFormatter::labelPositions() const

正規化されたラベル位置の配列への参照を返します。デフォルトの配列サイズは、親軸のセグメントカウントに 1 を足した値ですが、recalculate() メソッドのサブクラス化された実装では、配列のサイズが異なる場合があります。値は、0.0 (最小値) と1.0 (最大値) の間でなければなりません。既定では、インデックス 0 のラベルは、軸の最小値に対応します。

QValue3DAxis::segmentCountQAbstract3DAxis::labels 、およびrecalculate()も参照して ください。

[protected] QStringList &QValue3DAxisFormatter::labelStrings() const

フォーマッタのラベル文字列を含む文字列リストへの参照を返します。配列のサイズは、ラベル位置配列のサイズと等しくなければなりません。

labelPositions()も参照 ください。

[protected] QLocale QValue3DAxisFormatter::locale() const

このフォーマッタが現在使用しているロケールを返します。

setLocale()も参照ください

[protected] void QValue3DAxisFormatter::markDirty(bool labelsChange = false)

このフォーマッタをダーティにマークし、レンダラーが次のレンダラー同期時にキャッシュの新しいコピーを作成するように促します。このメソッドは、解決された値に影響を与える方法でフォーマッタが変更されるたびに、サブクラスによって呼び出される必要があります。変更によって親軸ラベル文字列を再生成する必要がある場合は、labelsChangetrue に設定します。

[virtual protected] void QValue3DAxisFormatter::populateCopy(QValue3DAxisFormatter &copy) const

このフォーマッタで位置、値、文字列を解決するために必要なすべての値を、フォーマッタのcopy にコピーします。サブクラスでこのメソッドを再実装する場合は、どこかでスーパークラスのバージョンをコールします。レンダラーは、このメソッドを使用してフォーマッターのコピーをキャッシュします。

新しいコピーを返します。新しいコピーの所有権は呼び出し元に移ります。

[virtual protected] float QValue3DAxisFormatter::positionAt(float value) const

与えられたvalue の軸に沿った正規化位置を返す。返される値は、値が親軸の範囲内にある場合は、0.0 (最小値)と1.0 (最大値)の間でなければなりません。

親軸の最小値と最大値の間の線形補間によって位置を解決できない場合は、このメソッドを再実装します。

recalculate() およびvalueAt()も参照して ください。

[virtual protected] void QValue3DAxisFormatter::recalculate()

ラベルとグリッド線の位置配列とラベル文字列配列のサイズ変更と入力を行い、値をその位置に対応付けるために必要な値を計算します。親軸は、この関数の内部からアクセスできます。

デフォルトの配列内容が適切でない場合は、このメソッドをサブクラスで再実装する必要があります。

サイズ変更と入力が必要な配列に関するドキュメントは、gridPositions()、subGridPositions()、labelPositions()、およびlabelStrings() メソッドを参照してください。

gridPositions(),subGridPositions(),labelPositions(),labelStrings(),axis()も参照

[protected] void QValue3DAxisFormatter::setAllowNegatives(bool allow)

allowtrue の場合、親軸が負の値を持つことを許可します。

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

[protected] void QValue3DAxisFormatter::setAllowZero(bool allow)

allowtrue の場合、親軸がゼロ値を持つことを許可します。

allowZero()も参照

[protected] void QValue3DAxisFormatter::setLocale(const QLocale &locale)

このフォーマッタが使用するlocale を設定します。親軸がグラフのアクティブ軸として設定されたり、軸フォーマッタがグラフに接続された軸に設定されたり、グラフのロケールが変更されたりすると、グラフは自動的にフォーマッタのロケールをグラフのロケールに設定します。

locale() およびQAbstract3DGraph::localeも参照のこと

[virtual protected] QString QValue3DAxisFormatter::stringForValue(qreal value, const QString &format) const

指定されたvalueformat を使用してフォーマットされたラベル文字列を返す。

QValue3DAxis::labelFormat プロパティに指定されたデフォルトのフォーマット規則が十分でない場合、指定されたvalue のフォーマットされた文字列を解決するために、サブクラスでこのメソッドを再実装します。

recalculate()、labelStrings() およびQValue3DAxis::labelFormatも参照してください

[protected] QList<float> &QValue3DAxisFormatter::subGridPositions() const

正規化されたサブグリッド線位置の配列への参照を返します。デフォルトの配列サイズは、親軸のセグメントカウント×親軸のサブセグメントカウントから 1 を引いた値に等しいが、recalculate() メソッドのサブクラス化された実装では、配列のサイズが異なる場合がある。値は、0.0 (最小値)と1.0 (最大値)の間でなければならない。

QValue3DAxis::segmentCountQValue3DAxis::subSegmentCount 、およびrecalculate()も参照してください

[virtual protected] float QValue3DAxisFormatter::valueAt(float position) const

軸に沿って正規化されたposition の値を返す。position 値は、親軸範囲内の値を得るために、0.0 (最小値) と1.0 (最大値) の間である必要があります。

親軸の最小値と最大値の間の線形補間によって値を解決できない場合は、このメソッドを再実装します。

recalculate() およびpositionAt()も参照して ください。

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