このページでは

QSurface3DSeries Class

QSurface3DSeries クラスは、3D サーフェスグラフ上のデータ系列を表します。詳細...

ヘッダー: #include <QSurface3DSeries>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: QT += graphs
QML内: Surface3DSeries
継承元: QAbstract3DSeries

パブリック型

enum DrawFlag { DrawWireframe, DrawSurface, DrawSurfaceAndWireframe, DrawFilledSurface }
flags DrawFlags

プロパティ

パブリック関数

QSurface3DSeries(QObject *parent = nullptr)
QSurface3DSeries(QSurfaceDataProxy *dataProxy, QObject *parent = nullptr)
virtual ~QSurface3DSeries() override
QValue3DAxis *axisX() const
QValue3DAxis *axisY() const
QValue3DAxis *axisZ() const
void clearArray()
void clearRow(qsizetype rowIndex)
const QSurfaceDataArray &dataArray() const &
QSurfaceDataArray dataArray() &&
QSurfaceDataProxy *dataProxy() const
QSurface3DSeries::DrawFlags drawMode() const
bool isFlatShadingSupported() const
void resetAxisX()
void resetAxisY()
void resetAxisZ()
bool rowsSanitized() const
QPoint selectedPoint() const
void setAxisX(QValue3DAxis *axis)
void setAxisY(QValue3DAxis *axis)
void setAxisZ(QValue3DAxis *axis)
void setDataArray(const QSurfaceDataArray &newDataArray)
void setDataProxy(QSurfaceDataProxy *proxy)
void setDrawMode(QSurface3DSeries::DrawFlags mode)
void setRowsSanitized(bool sanitized)
void setSelectedPoint(QPoint position)
void setShading(const QSurface3DSeries::Shading shading)
void setTexture(const QImage &texture)
void setTextureFile(const QString &filename)
void setWireframeColor(QColor color)
QSurface3DSeries::Shading shading() const
QImage texture() const
QString textureFile() const
QColor wireframeColor() const

シグナル

void axisXChanged(QValue3DAxis *axis)
void axisYChanged(QValue3DAxis *axis)
void axisZChanged(QValue3DAxis *axis)
void dataArrayChanged(const QSurfaceDataArray &array)
void dataProxyChanged(QSurfaceDataProxy *proxy)
void drawModeChanged(QSurface3DSeries::DrawFlags mode)
void flatShadingSupportedChanged(bool enabled)
void rowsSanitizedChanged(bool newRowsSanitized)
void selectedPointChanged(QPoint position)
void shadingChanged(const QSurface3DSeries::Shading shading)
void textureChanged(const QImage &image)
void textureFileChanged(const QString &filename)
void wireframeColorChanged(QColor color)

静的パブリックメンバー

詳細な説明

このクラスは、シリーズ固有の視覚的要素と、シリーズデータ(データプロキシを介して)を管理します。

プロキシとシリーズの関係に関しては、いくつかの重要な点を強調しておく必要があります。 この文脈では、データはシリーズに格納され、ユーザーはシリーズを通じてデータセットにアクセスできます。このシリーズは、プロキシオブジェクトによって制御または表現されます。したがって、プロキシを使用して、データに対するさまざまな操作を管理し、実際のデータセットを更新することができます。ただし、データセットを編集するには、このプロキシに関連付けられたシリーズを作成する必要があります。

シリーズに対してデータプロキシが明示的に設定されていない場合、シリーズはデフォルトのプロキシを作成します。別のプロキシを設定すると、既存のプロキシおよびシリーズに追加されたすべてのデータが破棄されます。

QAbstract3DSeries::mesh プロパティで設定されるオブジェクトメッシュは、サーフェスシリーズにおける選択ポインタの形状を定義します。

QSurface3DSeriesは、QAbstract3DSeries::setItemLabelFormat()に対して以下のフォーマットタグをサポートしています:

@xTitlex軸からのタイトル
@yTitley軸からのタイトル
@zTitlez軸からのタイトル
@xLabelx軸の書式を使用して書式設定された項目の値。詳細については、QValue3DAxis::labelFormat を参照してください。
@yLabely軸の書式を使用して書式設定された項目の値。詳細については、QValue3DAxis::labelFormat を参照してください。
@zLabelz軸の書式を使用して書式設定された項目の値。詳細については、QValue3DAxis::labelFormat を参照してください。
@seriesName系列名

例:

proxy->setItemLabelFormat(QStringLiteral("@valueTitle for (@rowLabel, @colLabel): %.1f"));

Qt Graphs 「3D でのデータ処理」も参照してください 。

メンバタイプのドキュメント

enum QSurface3DSeries::DrawFlag
flags QSurface3DSeries::DrawFlags

サーフェスの描画モード。この列挙型の値は、OR演算子を用いて組み合わせることができます。

定数値説明
QSurface3DSeries::DrawWireframe0x1グリッドのみが描画されます。
QSurface3DSeries::DrawSurface0x2サーフェスのみが描画されます。
QSurface3DSeries::DrawSurfaceAndWireframeDrawWireframe | DrawSurfaceサーフェスとグリッドの両方が描画されます。
QSurface3DSeries::DrawFilledSurface (since Qt 6.10)0x4サーフェスの塗りつぶしを描画します。このモードを設定すると、DrawSurface がまだ設定されていない場合は、それと同時に設定されます。

DrawFlags 型は、QFlags<DrawFlag> の typedef です。これは、DrawFlag 値の OR 組み合わせを格納します。

プロパティのドキュメント

[since 6.11] axisX : QValue3DAxis*

この系列に対して追加のX軸を設定します。軸が指定された場合、その系列は指定された軸の最小値と最大値の範囲に合わせてフィットされます。

この列挙型は Qt 6.11 で導入されました。

アクセス関数:

QValue3DAxis *axisX() const
void setAxisX(QValue3DAxis *axis)
void resetAxisX()

Notifier シグナル:

void axisXChanged(QValue3DAxis *axis)

[since 6.11] axisY : QValue3DAxis*

この系列に対して追加のY軸を設定します。軸が指定された場合、その系列は当該軸の最小値と最大値の範囲内に収まるようにフィットされます。

この列挙型は Qt 6.11 で導入されました。

アクセス関数:

QValue3DAxis *axisY() const
void setAxisY(QValue3DAxis *axis)
void resetAxisY()

Notifier シグナル:

void axisYChanged(QValue3DAxis *axis)

[since 6.11] axisZ : QValue3DAxis*

このシリーズには追加のZ軸が設定されます。軸が指定された場合、シリーズはその軸の最小値と最大値の範囲に合わせてフィットされます。

この列挙型はQt 6.11で導入されました。

アクセス関数:

QValue3DAxis *axisZ() const
void setAxisZ(QValue3DAxis *axis)
void resetAxisZ()

Notifierシグナル:

void axisZChanged(QValue3DAxis *axis)

dataArray : QSurfaceDataArray

シリーズ用のデータ配列。

データ配列への参照を保持します。

データ配列が設定された際、newDataArray が前回のものと同一でない限り、dataArrayChangedシグナルが発信されます。

注: dataArray に関する操作を行う前に 、関連するプロキシに対してシリーズを作成しておく必要があります。

アクセス関数:

const QSurfaceDataArray &dataArray() const &
QSurfaceDataArray dataArray() &&
void setDataArray(const QSurfaceDataArray &newDataArray)

通知シグナル:

void dataArrayChanged(const QSurfaceDataArray &array)

関連項目: clearRow(qsizetype rowIndex) およびclearArray()。

dataProxy : QSurfaceDataProxy*

このプロパティには、アクティブなデータプロキシが格納されます。

このシリーズは、自身に設定されたプロキシの所有権を取得し、新しいプロキシが追加されると、以前に設定されていたプロキシを削除します。プロキシはnullにしたり、別のシリーズに設定したりすることはできません。

アクセス関数:

QSurfaceDataProxy *dataProxy() const
void setDataProxy(QSurfaceDataProxy *proxy)

通知シグナル:

void dataProxyChanged(QSurfaceDataProxy *proxy)

drawMode : QSurface3DSeries::DrawFlags

描画モード。

有効な値は、DrawFlag の各値です。すべてのフラグをクリアすることは許可されていません。

アクセス関数:

QSurface3DSeries::DrawFlags drawMode() const
void setDrawMode(QSurface3DSeries::DrawFlags mode)

通知シグナル:

void drawModeChanged(QSurface3DSeries::DrawFlags mode)

[read-only] flatShadingSupported : bool

このプロパティは、現在のシステムがサーフェス・フラットシェーディングをサポートしているかどうかを示します。

サーフェスのフラットシェーディングには、GL_EXT_gpu_shader4 拡張機能を備えた GLSL バージョン 1.2 以上が必要です。true の場合、サーフェスのフラットシェーディングがサポートされています。

注:この 読み取り専用プロパティは、最初のレンダリングパス終了後に正しい値に設定されます。それまでは常にtrue となります。

アクセス関数:

bool isFlatShadingSupported() const

通知シグナル:

void flatShadingSupportedChanged(bool enabled)

rowsSanitized : bool

このプロパティは、行のサニタイズを実行するかどうかを指定します。

sanitized がtrue に設定されている場合、有効なデータが含まれていない行をシリーズから削除します。

注: これにより 、パフォーマンスがわずかに低下する可能性があります。

アクセス関数:

bool rowsSanitized() const
void setRowsSanitized(bool sanitized)

通知シグナル:

void rowsSanitizedChanged(bool newRowsSanitized)

selectedPoint : QPoint

このプロパティには、シリーズ内で選択されているサーフェスグリッド点が格納されます。

行と列で指定されたシリーズのデータ配列内の、座標position の位置にある表面グリッドポイントを選択します。

一度に選択できる点は 1 つだけです。

このシリーズから選択を解除するには、invalidSelectionPosition() をposition に設定します。このシリーズがグラフに追加されている場合、グラフはユーザーの操作に応じて、または選択が無効になった場合に、選択を調整することができます。

選択された点の行の前後から行を削除したり、行を挿入したりすると、選択範囲が調整され、同じ点が選択されたままになります。

アクセス関数:

QPoint selectedPoint() const
void setSelectedPoint(QPoint position)

通知シグナル:

void selectedPointChanged(QPoint position)

Q3DGraphsWidgetItem::clearSelection()も参照してください 。

shading : QSurface3DSeries::Shading

このプロパティは、サーフェス・フラット・シェーディングが有効かどうかを指定します。

デフォルトでは「QSurface3DSeries::Shading::Flat 」に設定されています。

無効にすると、サーフェスの法線が補間され、エッジが丸く見えます。有効にすると、三角形内の法線が一定に保たれ、三角形の色が一様に表示されます。これにより、モデルからのデータがより読みやすくなります。

注:フラットシェーディングされた サーフェスを表示するには、GL_EXT_gpu_shader4 拡張機能を備えた GLSL バージョン 1.2 以上が必要です。flatShadingSupported プロパティの値は、実行時にフラットシェーディングがサポートされているかどうかを示します。

アクセス関数:

QSurface3DSeries::Shading shading() const
void setShading(const QSurface3DSeries::Shading shading)

通知シグナル:

void shadingChanged(const QSurface3DSeries::Shading shading)

texture : QImage

このプロパティは、サーフェスのテクスチャをQImage として保持します。

QImage を空に設定すると、テクスチャがクリアされます。

アクセス関数:

QImage texture() const
void setTexture(const QImage &texture)

通知シグナル:

void textureChanged(const QImage &image)

textureFile : QString

このプロパティは、サーフェスのテクスチャをファイルとして保持します。

ファイル名を空に設定すると、テクスチャがクリアされます。

アクセス関数:

QString textureFile() const
void setTextureFile(const QString &filename)

通知シグナル:

void textureFileChanged(const QString &filename)

wireframeColor : QColor

このプロパティは、サーフェスのワイヤーフレームの色を指定します。

アクセス関数:

QColor wireframeColor() const
void setWireframeColor(QColor color)

通知シグナル:

void wireframeColorChanged(QColor color)

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

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

親オブジェクトparent を使用して、サーフェスの3Dシリーズを構築します。

[explicit] QSurface3DSeries::QSurface3DSeries(QSurfaceDataProxy *dataProxy, QObject *parent = nullptr)

データプロキシ `dataProxy ` および親 `parent` を使用して、サーフェスの 3D シリーズを構築します。

[override virtual noexcept] QSurface3DSeries::~QSurface3DSeries()

サーフェスの3Dシリーズを削除します。

void QSurface3DSeries::clearArray()

既存の配列をクリアします。

void QSurface3DSeries::clearRow(qsizetype rowIndex)

指定されたrowIndex に従って、配列内の既存の行をクリアします。

[static] QPoint QSurface3DSeries::invalidSelectionPosition()

無効な選択位置を示すQPoint を返します。この値は、selectedPoint プロパティに設定することで、このシリーズから選択を解除します。

Q3DGraphsWidgetItem::clearSelection()も参照してください 。

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