이 페이지에서

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

이 속성은 현재 시스템에서 표면 플랫 셰이딩을 지원하는지 여부를 나타냅니다.

표면의 플랫 셰이딩을 사용하려면 최소한 GLSL 버전 1.2와 GL_EXT_gpu_shader4 확장이 필요합니다. true 인 경우, 표면의 플랫 셰이딩이 지원됩니다.

참고: 이 읽기 전용 속성은 첫 번째 렌더링 패스가 끝난 후에야 올바른 값으로 설정됩니다. 그 전까지는 항상 ` true`입니다.

액세스 함수:

bool isFlatShadingSupported() const

알림 신호:

void flatShadingSupportedChanged(bool enabled)

rowsSanitized : bool

이 속성은 행 정화(row sanitization)를 수행할지 여부를 결정합니다.

sanitized 가 ` true`로 설정된 경우, 유효한 데이터가 포함되지 않은 시리즈의 행을 제거합니다.

참고: 이로 인해 성능이 약간 저하될 수 있습니다.

액세스 함수:

bool rowsSanitized() const
void setRowsSanitized(bool sanitized)

알림 신호:

void rowsSanitizedChanged(bool newRowsSanitized)

selectedPoint : QPoint

이 속성은 시계열에서 선택된 표면 격자점을 저장합니다.

행과 열로 지정된 시리즈의 데이터 배열에서 좌표 position 에 해당하는 표면 격자점을 선택합니다.

한 번에 하나의 점만 선택할 수 있습니다.

이 시리즈에서 선택을 해제하려면 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.