QSurfaceDataProxy Class
QSurfaceDataProxy クラスは、3D サーフェス グラフのデータ プロキシです。詳細...
ヘッダー | #include <QSurfaceDataProxy> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
qmake | QT += graphs |
QML で | SurfaceDataProxy |
を継承: | QAbstractDataProxy |
継承される |
- 継承メンバを含む全メンバ一覧
- QSurfaceDataProxy はQt Graphs C++ Classes for 3D に含まれます。
プロパティ
- columnCount : const qsizetype
- rowCount : const qsizetype
- series : QSurface3DSeries* const
パブリック機能
QSurfaceDataProxy(QObject *parent = nullptr) | |
virtual | ~QSurfaceDataProxy() override |
qsizetype | addRow(QSurfaceDataRow row) |
qsizetype | addRows(QSurfaceDataArray rows) |
qsizetype | columnCount() const |
void | insertRow(qsizetype rowIndex, QSurfaceDataRow row) |
void | insertRows(qsizetype rowIndex, QSurfaceDataArray rows) |
const QSurfaceDataItem & | itemAt(QPoint position) const |
const QSurfaceDataItem & | itemAt(qsizetype rowIndex, qsizetype columnIndex) const |
void | removeRows(qsizetype rowIndex, qsizetype removeCount) |
void | resetArray() |
void | resetArray(QSurfaceDataArray newArray) |
qsizetype | rowCount() const |
QSurface3DSeries * | series() const |
void | setItem(QPoint position, QSurfaceDataItem item) |
void | setItem(qsizetype rowIndex, qsizetype columnIndex, QSurfaceDataItem item) |
void | setRow(qsizetype rowIndex, QSurfaceDataRow row) |
void | setRows(qsizetype rowIndex, QSurfaceDataArray rows) |
シグナル
void | arrayReset() |
void | columnCountChanged(qsizetype count) |
void | itemChanged(qsizetype rowIndex, qsizetype columnIndex) |
void | rowCountChanged(qsizetype count) |
void | rowsAdded(qsizetype startIndex, qsizetype count) |
void | rowsChanged(qsizetype startIndex, qsizetype count) |
void | rowsInserted(qsizetype startIndex, qsizetype count) |
void | rowsRemoved(qsizetype startIndex, qsizetype count) |
void | seriesChanged(QSurface3DSeries *series) |
関連する非会員
詳細説明
サーフェスデータプロキシは、行のサーフェス関連データを処理します。このために、2つの補助的な型エイリアスを提供します:QtGraphs::QSurfaceDataArray と QtGraphs::QSurfaceDataRow です。QSurfaceDataArray
は、行を制御するQList です。QSurfaceDataRow
は、QSurfaceDataItem オブジェクトを含むQList です。プロキシにデータを供給する方法の詳細については、Q3DSurfaceWidgetItem ドキュメントのサンプルコードを参照してください。データは系列で格納されるので、データセットにこれらの関数を使う前に、プロキシに関連する系列を作成する必要がある。
すべての行の項目数は同じでなければならない.
QSurfaceDataProxyは、直接であれ、QSurfaceDataArray
コンテナ内であれ、渡されたすべてのQSurfaceDataRow
オブジェクトの所有権を持つ。プロキシに配列を追加した後、サーフェスデータの行ポインタを使用してデータを直接変更するには、グラフを更新するために適切なシグナルを発行する必要があります。
適切なサーフェスを作成するには、すべての行の連続する各項目のx値は、行全体を通して昇順または降順でなければならない。同様に、すべての列で連続する各アイテムのz値は、列全体で昇順または降順でなければならない。
注意: 現在のところ、行と列がまっすぐなサーフェスのみが完全にサポートされています。z値がまったく同じでないアイテムを持つ行や、x値がまったく同じでないアイテムを持つ列は、サーフェス全体が可視のx軸またはz軸の範囲に完全に収まらない場合、正しくクリッピングされないことがあります。
メモ: 2行または2列未満のサーフェスは有効なサーフェスとはみなされず、レンダリングされません。
注意: 環境によっては、可視頂点数が多いサーフェスがレンダリングされないことがあります。これは主に32ビットとOpenGL ES2プラットフォームで発生する問題です。
Qt Graphs 3D でのデータ処理も参照してください 。
プロパティ・ドキュメント
[read-only]
columnCount : const qsizetype
このプロパティは、データ配列の列数を保持する。
アクセス関数:
qsizetype | columnCount() const |
通知シグナル
void | columnCountChanged(qsizetype count) |
[read-only]
rowCount : const qsizetype
このプロパティは、データ配列の行数を保持する。
アクセス関数:
qsizetype | rowCount() const |
通知シグナル
void | rowCountChanged(qsizetype count) |
[read-only]
series : QSurface3DSeries* const
このプロパティは、このプロキシがアタッチされているシリーズを保持する。
アクセス関数:
QSurface3DSeries * | series() const |
通知シグナル
void | seriesChanged(QSurface3DSeries *series) |
メンバ関数ドキュメント
[explicit]
QSurfaceDataProxy::QSurfaceDataProxy(QObject *parent = nullptr)
与えられたparent で QSurfaceDataProxy を構築する.
[override virtual noexcept]
QSurfaceDataProxy::~QSurfaceDataProxy()
サーフェスデータのプロキシを削除する。
qsizetype QSurfaceDataProxy::addRow(QSurfaceDataRow row)
新しい行row を配列の末尾に追加する。新しい行は、最初の配列の行と同じ列数でなければなりません。
追加された行のインデックスを返します。
qsizetype QSurfaceDataProxy::addRows(QSurfaceDataArray rows)
新しいrows を配列の末尾に追加する。新しい行は、最初の配列の行と同じ列数でなければなりません。
最初に追加された行のインデックスを返します。
[signal]
void QSurfaceDataProxy::arrayReset()
このシグナルは、データ配列がリセットされたときに発せられる。resetArray() を呼び出さずに配列全体の内容が変更された場合、グラフを更新するためにこのシグナルを発する必要がある。
void QSurfaceDataProxy::insertRow(qsizetype rowIndex, QSurfaceDataRow row)
新しい行row をrowIndex に挿入する。rowIndex が配列のサイズと等しい場合、行は配列の末尾に追加される。新しい行は、初期配列の行と同じ列数でなければならない。
void QSurfaceDataProxy::insertRows(qsizetype rowIndex, QSurfaceDataArray rows)
新しいrows をrowIndex に挿入する。rowIndex が配列のサイズと等しい場合、行は配列の末尾に追加される。新しいrows は、初期配列の行と同じ数の列を持たなければならない。
const QSurfaceDataItem &QSurfaceDataProxy::itemAt(QPoint position) const
位置position にある項目へのポインタを返す。position のx値は行を、y値は列を示す。この項目は、データを変更する次の呼び出しまで有効であることが保証される。
const QSurfaceDataItem &QSurfaceDataProxy::itemAt(qsizetype rowIndex, qsizetype columnIndex) const
rowIndex 、columnIndex で指定された位置にある項目へのポインタを返す。 このポインタは、データを変更する次の呼び出しまで有効であることが保証されている。
[signal]
void QSurfaceDataProxy::itemChanged(qsizetype rowIndex, qsizetype columnIndex)
このシグナルは、rowIndex とcolumnIndex で指定された位置の項目が変更されたときに発せられる。setItem() を呼び出さずにアイテムが配列内で変更された場合、グラフを更新するためにこのシグナルを発する必要がある。
void QSurfaceDataProxy::removeRows(qsizetype rowIndex, qsizetype removeCount)
rowIndex の位置から、removeCount で指定された行数を削除する。配列の末尾を越えて行を削除しようとしても何もしない。
void QSurfaceDataProxy::resetArray()
既存の配列をクリアし、arrayReset ()シグナルをトリガーする。
void QSurfaceDataProxy::resetArray(QSurfaceDataArray newArray)
newArray* 新しい配列が既存の配列と等しい場合、この関数は単にarrayReset() シグナルをトリガーする。
[signal]
void QSurfaceDataProxy::rowsAdded(qsizetype startIndex, qsizetype count)
このシグナルは、startIndex の位置から、count で指定された数の行が追加されたときに発せられる。addRow() またはaddRows() を呼び出さずに配列に行が追加された場合、グラフを更新するためにこのシグナルを発する必要がある。
[signal]
void QSurfaceDataProxy::rowsChanged(qsizetype startIndex, qsizetype count)
このシグナルは、startIndex の位置から、count で指定された行数が変更されたときに発せられる。setRow() またはsetRows() を呼び出さずに配列の行が変更された場合、グラフを更新するためにこのシグナルを発する必要がある。
[signal]
void QSurfaceDataProxy::rowsInserted(qsizetype startIndex, qsizetype count)
このシグナルは、count で指定された数の行がstartIndex の位置に挿入されたときに発せられる。
insertRow() またはinsertRows() を呼び出さずに行が配列に挿入された場合、グラフを更新するためにこのシグナルを発行する必要がある。
[signal]
void QSurfaceDataProxy::rowsRemoved(qsizetype startIndex, qsizetype count)
このシグナルは、startIndex の位置から、count で指定された数の行が削除されたときに発せられる。
インデックスには、行が配列の末尾から削除された場合の現在の配列サイズを指定する。removeRows()を呼び出さずに配列から行が削除された場合、グラフを更新するためにこのシグナルを発する必要がある。
void QSurfaceDataProxy::setItem(QPoint position, QSurfaceDataItem item)
位置position の単一項目を項目item に変更する。position の x 値は行を、y 値は列を示す。
void QSurfaceDataProxy::setItem(qsizetype rowIndex, qsizetype columnIndex, QSurfaceDataItem item)
rowIndex とcolumnIndex で指定された位置の単一項目を、項目item に変更する。
void QSurfaceDataProxy::setRow(qsizetype rowIndex, QSurfaceDataRow row)
位置rowIndex にある行を、row で指定された新しい行に置き換えることで、既存の行を変更する。新しい行は、rowIndex の位置に既に格納されている既存の行と同じにすることができる。 新しい行は、置き換える行と同じ列数でなければならない。
void QSurfaceDataProxy::setRows(qsizetype rowIndex, QSurfaceDataArray rows)
rowIndex の位置から始まる行を、rows で指定される新しい行に置き換えることで、既存の行を変更する。rows rowIndex新しい行は、置き換える行と同じ列数でなければならない。
関連する非会員
[alias]
QSurfaceDataArray
QSurfaceDataRow オブジェクトへのポインタのリスト。
[alias]
QSurfaceDataRow
QSurfaceDataItem オブジェクトのリスト。
© 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.