Q3DTheme Class
Q3DTheme 클래스는 그래프에 시각적 스타일을 제공합니다. 더 보기...
| 헤더: | #include <Q3DTheme> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
| qmake: | QT += datavisualization |
| 출시일: | QtDataVisualization 1.0 |
| QML에서: | Theme3D |
| 상속: | QObject |
| 상태: | 사용 중단됨 |
이 클래스는 더 이상 사용되지 않습니다. 새로운 코드에서는 이 클래스를 사용하지 않는 것을 강력히 권장합니다.
공개 유형
| enum | ColorStyle { ColorStyleUniform, ColorStyleObjectGradient, ColorStyleRangeGradient } |
| enum | Theme { ThemeQt, ThemePrimaryColors, ThemeDigia, ThemeStoneMoss, ThemeArmyBlue, …, ThemeUserDefined } |
속성
|
|
공개 함수
| Q3DTheme(QObject *parent = nullptr) | |
| Q3DTheme(Q3DTheme::Theme themeType, QObject *parent = nullptr) | |
| virtual | ~Q3DTheme() |
| float | ambientLightStrength() const |
| QColor | backgroundColor() const |
| QList<QColor> | baseColors() const |
| QList<QLinearGradient> | baseGradients() const |
| Q3DTheme::ColorStyle | colorStyle() const |
| QFont | font() const |
| QColor | gridLineColor() const |
| float | highlightLightStrength() const |
| bool | isBackgroundEnabled() const |
| bool | isGridEnabled() const |
| bool | isLabelBackgroundEnabled() const |
| bool | isLabelBorderEnabled() const |
| QColor | labelBackgroundColor() const |
| QColor | labelTextColor() const |
| QColor | lightColor() const |
| float | lightStrength() const |
| QColor | multiHighlightColor() const |
| QLinearGradient | multiHighlightGradient() const |
| void | setAmbientLightStrength(float strength) |
| void | setBackgroundColor(const QColor &color) |
| void | setBackgroundEnabled(bool enabled) |
| void | setBaseColors(const QList<QColor> &colors) |
| void | setBaseGradients(const QList<QLinearGradient> &gradients) |
| void | setColorStyle(Q3DTheme::ColorStyle style) |
| void | setFont(const QFont &font) |
| void | setGridEnabled(bool enabled) |
| void | setGridLineColor(const QColor &color) |
| void | setHighlightLightStrength(float strength) |
| void | setLabelBackgroundColor(const QColor &color) |
| void | setLabelBackgroundEnabled(bool enabled) |
| void | setLabelBorderEnabled(bool enabled) |
| void | setLabelTextColor(const QColor &color) |
| void | setLightColor(const QColor &color) |
| void | setLightStrength(float strength) |
| void | setMultiHighlightColor(const QColor &color) |
| void | setMultiHighlightGradient(const QLinearGradient &gradient) |
| void | setSingleHighlightColor(const QColor &color) |
| void | setSingleHighlightGradient(const QLinearGradient &gradient) |
| void | setType(Q3DTheme::Theme themeType) |
| void | setWindowColor(const QColor &color) |
| QColor | singleHighlightColor() const |
| QLinearGradient | singleHighlightGradient() const |
| Q3DTheme::Theme | type() const |
| QColor | windowColor() const |
신호
| void | ambientLightStrengthChanged(float strength) |
| void | backgroundColorChanged(const QColor &color) |
| void | backgroundEnabledChanged(bool enabled) |
| void | baseColorsChanged(const QList<QColor> &colors) |
| void | baseGradientsChanged(const QList<QLinearGradient> &gradients) |
| void | colorStyleChanged(Q3DTheme::ColorStyle style) |
| void | fontChanged(const QFont &font) |
| void | gridEnabledChanged(bool enabled) |
| void | gridLineColorChanged(const QColor &color) |
| void | highlightLightStrengthChanged(float strength) |
| void | labelBackgroundColorChanged(const QColor &color) |
| void | labelBackgroundEnabledChanged(bool enabled) |
| void | labelBorderEnabledChanged(bool enabled) |
| void | labelTextColorChanged(const QColor &color) |
| void | lightColorChanged(const QColor &color) |
| void | lightStrengthChanged(float strength) |
| void | multiHighlightColorChanged(const QColor &color) |
| void | multiHighlightGradientChanged(const QLinearGradient &gradient) |
| void | singleHighlightColorChanged(const QColor &color) |
| void | singleHighlightGradientChanged(const QLinearGradient &gradient) |
| void | typeChanged(Q3DTheme::Theme themeType) |
| void | windowColorChanged(const QColor &color) |
상세 설명
그래프 전체에 적용되는 시각적 속성을 지정합니다. 기본 제공되는 여러 테마가 있으며, 이를 그대로 사용하거나 자유롭게 수정할 수 있습니다.
다음 속성은 QAbstract3DSeries 속성을 사용하여 시계열에서 명시적으로 설정함으로써 재정의할 수 있습니다: baseColors, baseGradients, colorStyle.
ThemeUserDefined 열거형 값을 사용하여 테마를 처음부터 새로 만들 수 있습니다. 기본 생성자를 사용하여 테마를 생성하면 새로운 사용자 정의 테마가 생성됩니다.
기본 테마
다음 표에는 테마가 제어하는 속성과 ThemeUserDefined 의 기본값이 나열되어 있습니다.
사용 예시
수정 없이 기본 테마 생성하기:
내장 테마를 생성하고 일부 속성을 수정하는 방법:
Q3DTheme *theme = new Q3DTheme(Q3DTheme::ThemeQt);
theme->setBackgroundEnabled(false);
theme->setLabelBackgroundEnabled(false);사용자 정의 테마 생성:
Q3DTheme *theme = new Q3DTheme();
theme->setAmbientLightStrength(0.3f);
theme->setBackgroundColor(QColor(QRgb(0x99ca53)));
theme->setBackgroundEnabled(true);
theme->setBaseColor(QColor(QRgb(0x209fdf)));
theme->setColorStyle(Q3DTheme::ColorStyleUniform);
theme->setFont(QFont(QStringLiteral("Impact"), 35));
theme->setGridEnabled(true);
theme->setGridLineColor(QColor(QRgb(0x99ca53)));
theme->setHighlightLightStrength(7.0f);
theme->setLabelBackgroundColor(QColor(0xf6, 0xa6, 0x25, 0xa0));
theme->setLabelBackgroundEnabled(true);
theme->setLabelBorderEnabled(true);
theme->setLabelTextColor(QColor(QRgb(0x404044)));
theme->setLightColor(Qt::white);
theme->setLightStrength(6.0f);
theme->setMultiHighlightColor(QColor(QRgb(0x6d5fd5)));
theme->setSingleHighlightColor(QColor(QRgb(0xf6a625)));
theme->setWindowColor(QColor(QRgb(0xffffff)));내장 테마를 생성하고, 설정된 후 일부 속성을 수정하는 방법:
멤버 유형 설명서
enum Q3DTheme::ColorStyle
색상 스타일.
| 상수 | 값 | 설명 |
|---|---|---|
Q3DTheme::ColorStyleUniform | 0 | 객체는 단일 색상으로 렌더링됩니다. 사용되는 색상은 baseColors, singleHighlightColor 및 multiHighlightColor 속성에서 지정됩니다. |
Q3DTheme::ColorStyleObjectGradient | 1 | 객체의 높이에 관계없이 각 객체에 전체 그라데이션을 적용하여 색상을 지정합니다. 사용되는 그라데이션은 baseGradients, singleHighlightGradient 및 multiHighlightGradient 속성에서 지정됩니다. |
Q3DTheme::ColorStyleRangeGradient | 2 | 객체는 객체의 높이와 Y축 상의 위치에 따라 결정되는 전체 그라데이션의 일부를 사용하여 색상이 지정됩니다. 사용되는 그라데이션은 baseGradients, singleHighlightGradient 및 multiHighlightGradient 속성에서 지정됩니다. |
enum Q3DTheme::Theme
기본 제공 테마.
| 상수 | 값 | 설명 |
|---|---|---|
Q3DTheme::ThemeQt | 0 | 기본 색상이 녹색인 밝은 테마입니다. |
Q3DTheme::ThemePrimaryColors | 1 | 노란색을 기본 색상으로 하는 밝은 테마입니다. |
Q3DTheme::ThemeDigia | 2 | 회색을 기본 색상으로 하는 밝은 테마. |
Q3DTheme::ThemeStoneMoss | 3 | 노란색을 기본 색상으로 한 중간 어두운 테마. |
Q3DTheme::ThemeArmyBlue | 4 | 파란색을 기본 색상으로 한 중간 밝기 테마. |
Q3DTheme::ThemeRetro | 5 | 갈색을 기본 색상으로 한 중간 밝기 테마. |
Q3DTheme::ThemeEbony | 6 | 흰색을 기본 색상으로 하는 어두운 테마. |
Q3DTheme::ThemeIsabelle | 7 | 노란색을 기본 색상으로 하는 어두운 테마. |
Q3DTheme::ThemeUserDefined | 8 | 사용자 정의 테마입니다. 자세한 내용은 Default Theme 을 참조하십시오. |
속성 설명서
ambientLightStrength : float
이 속성은 그래프 전체의 주변광 강도를 지정합니다.
이 값은 빛의 위치와 관계없이 그래프 전체에 걸쳐 색상이 얼마나 균일하고 밝게 표시될지를 결정합니다.
값은 0.0f 과 1.0f 사이여야 합니다.
액세스 함수:
| float | ambientLightStrength() const |
| void | setAmbientLightStrength(float strength) |
알림 신호:
| void | ambientLightStrengthChanged(float strength) |
backgroundColor : QColor
이 속성은 그래프 배경색을 지정합니다.
액세스 함수:
| QColor | backgroundColor() const |
| void | setBackgroundColor(const QColor &color) |
알림 신호:
| void | backgroundColorChanged(const QColor &color) |
backgroundEnabled : bool
이 속성은 배경이 표시되는지 여부와 관계없이 적용됩니다.
배경은 ` backgroundColor` 속성의 값을 사용하여 그려집니다.
액세스 함수:
| bool | isBackgroundEnabled() const |
| void | setBackgroundEnabled(bool enabled) |
알림 신호:
| void | backgroundEnabledChanged(bool enabled) |
baseColors : QList<QColor>
이 속성은 그래프 내의 모든 개체에 사용될 기본 색상 목록을 시리즈별로 저장합니다.
시리즈 수가 색상 수보다 많을 경우, 색상 목록은 순환하여 목록의 첫 번째 색상부터 다시 시작됩니다.
colorStyle 가 ColorStyleUniform 가 아닌 경우, 이 속성은 즉시 적용되지 않습니다.
baseColor 가 가 아닌 경우 이 값은 즉시 적용되지 않습니다.
액세스 함수:
| QList<QColor> | baseColors() const |
| void | setBaseColors(const QList<QColor> &colors) |
알림 신호:
| void | baseColorsChanged(const QList<QColor> &colors) |
baseGradients : QList<QLinearGradient>
이 속성은 그래프 내의 모든 객체에 시리즈별로 사용될 기본 그라디언트 목록을 저장합니다.
시리즈 수가 그라디언트 수보다 많을 경우, 그라디언트 목록은 순환하여 목록의 첫 번째 그라디언트부터 다시 시작합니다.
colorStyle 가 ` ColorStyleUniform`인 경우, 이 속성은 즉시 적용되지 않습니다.
baseGradient 가 인 경우 이 값은 시리즈에서 를 명시적으로 설정하여 재정의할 수 있습니다.
액세스 함수:
| QList<QLinearGradient> | baseGradients() const |
| void | setBaseGradients(const QList<QLinearGradient> &gradients) |
알림 신호:
| void | baseGradientsChanged(const QList<QLinearGradient> &gradients) |
colorStyle : ColorStyle
이 속성은 그래프 색상의 스타일을 지정합니다.
ColorStyle 열거형 값 중 하나입니다.
이 값은 시리즈에서 colorStyle 를 명시적으로 설정하여 재정의할 수 있습니다.
액세스 함수:
| Q3DTheme::ColorStyle | colorStyle() const |
| void | setColorStyle(Q3DTheme::ColorStyle style) |
알림 신호:
| void | colorStyleChanged(Q3DTheme::ColorStyle style) |
font : QFont
이 속성은 레이블에 사용할 글꼴을 지정합니다.
액세스 함수:
| QFont | font() const |
| void | setFont(const QFont &font) |
알림 신호:
| void | fontChanged(const QFont &font) |
gridEnabled : bool
이 속성은 격자선이 그려지는지 여부를 결정합니다.
이 값은 모든 격자선에 적용됩니다.
액세스 함수:
| bool | isGridEnabled() const |
| void | setGridEnabled(bool enabled) |
알림 신호:
| void | gridEnabledChanged(bool enabled) |
gridLineColor : QColor
이 속성은 격자선의 색상을 지정합니다.
참고: 투명도는 지원되지 않으며, 이를 사용할 경우 정의되지 않은 동작이 발생합니다.
액세스 함수:
| QColor | gridLineColor() const |
| void | setGridLineColor(const QColor &color) |
알림 신호:
| void | gridLineColorChanged(const QColor &color) |
highlightLightStrength : float
이 속성은 선택한 오브젝트의 스페큘러 광도 강도를 저장합니다.
값은 0.0f 과 10.0f 사이여야 합니다.
액세스 함수:
| float | highlightLightStrength() const |
| void | setHighlightLightStrength(float strength) |
알림 신호:
| void | highlightLightStrengthChanged(float strength) |
labelBackgroundColor : QColor
이 속성은 레이블 배경색을 지정합니다.
labelBackgroundEnabled 가 false 인 경우에는 효과가 없습니다.
액세스 함수:
| QColor | labelBackgroundColor() const |
| void | setLabelBackgroundColor(const QColor &color) |
알림 신호:
| void | labelBackgroundColorChanged(const QColor &color) |
labelBackgroundEnabled : bool
이 속성은 레이블이 색상 배경으로 그려지든 완전히 투명한 배경으로 그려지든 상관없이 적용됩니다.
labelBackgroundColor 값(알파 값 포함)은 배경을 그리는 데 사용됩니다.
배경이 있는 레이블은 가장 긴 레이블을 기준으로 축별로 동일한 크기로 그려지며, 텍스트는 레이블 중앙에 정렬됩니다. 배경이 없는 레이블은 있는 그대로 그려지며, 그래프 내 위치에 따라 왼쪽 또는 오른쪽으로 정렬됩니다.
액세스 함수:
| bool | isLabelBackgroundEnabled() const |
| void | setLabelBackgroundEnabled(bool enabled) |
알림 신호:
| void | labelBackgroundEnabledChanged(bool enabled) |
labelBorderEnabled : bool
이 속성은 배경이 설정된 레이블에 대해 레이블 테두리가 그려지는지 여부를 결정합니다.
labelBackgroundEnabled 가 ` false`로 설정된 경우에는 효과가 없습니다.
액세스 함수:
| bool | isLabelBorderEnabled() const |
| void | setLabelBorderEnabled(bool enabled) |
알림 신호:
| void | labelBorderEnabledChanged(bool enabled) |
labelTextColor : QColor
이 속성은 레이블에 사용되는 글꼴의 색상을 지정합니다.
액세스 함수:
| QColor | labelTextColor() const |
| void | setLabelTextColor(const QColor &color) |
알림 신호:
| void | labelTextColorChanged(const QColor &color) |
lightColor : QColor
이 속성은 주변광 및 반사광의 색상을 지정합니다.
이 값은 Q3DScene에 지정된 빛에 영향을 미칩니다.
액세스 함수:
| QColor | lightColor() const |
| void | setLightColor(const QColor &color) |
알림 신호:
| void | lightColorChanged(const QColor &color) |
lightStrength : float
이 속성은 전체 그래프에 대한 스페큘러 광도 값을 저장합니다.
값은 0.0f 과 10.0f 사이여야 합니다.
이 값은 Q3DScene에 지정된 빛에 영향을 미칩니다.
액세스 함수:
| float | lightStrength() const |
| void | setLightStrength(float strength) |
알림 신호:
| void | lightStrengthChanged(float strength) |
multiHighlightColor : QColor
이 속성은 선택된 객체의 강조 표시 색상을 저장합니다.
selectionMode 에 ' QAbstract3DGraph::SelectionRow ' 또는 ' QAbstract3DGraph::SelectionColumn ' 플래그가 설정된 경우 사용됩니다.
액세스 함수:
| QColor | multiHighlightColor() const |
| void | setMultiHighlightColor(const QColor &color) |
알림 신호:
| void | multiHighlightColorChanged(const QColor &color) |
multiHighlightGradient : QLinearGradient
이 속성은 선택된 객체의 하이라이트 그라데이션을 저장합니다.
selectionMode 에 ‘ QAbstract3DGraph::SelectionRow ’ 또는 ‘ QAbstract3DGraph::SelectionColumn ’ 플래그가 설정된 경우 사용됩니다.
액세스 함수:
| QLinearGradient | multiHighlightGradient() const |
| void | setMultiHighlightGradient(const QLinearGradient &gradient) |
알림 신호:
| void | multiHighlightGradientChanged(const QLinearGradient &gradient) |
singleHighlightColor : QColor
이 속성은 선택된 객체의 강조 표시 색상을 저장합니다.
selectionMode 에 ' QAbstract3DGraph::SelectionItem ' 플래그가 설정된 경우 사용됩니다.
액세스 함수:
| QColor | singleHighlightColor() const |
| void | setSingleHighlightColor(const QColor &color) |
알림 신호:
| void | singleHighlightColorChanged(const QColor &color) |
singleHighlightGradient : QLinearGradient
이 속성은 선택된 객체의 하이라이트 그라데이션을 저장합니다.
selectionMode 에 ‘ QAbstract3DGraph::SelectionItem ’ 플래그가 설정된 경우 사용됩니다.
액세스 함수:
| QLinearGradient | singleHighlightGradient() const |
| void | setSingleHighlightGradient(const QLinearGradient &gradient) |
알림 신호:
| void | singleHighlightGradientChanged(const QLinearGradient &gradient) |
type : Theme
이 속성은 테마의 유형을 나타냅니다.
이 유형은 테마를 생성할 때 자동으로 설정되지만, 나중에 변경할 수도 있습니다. 테마 유형을 변경하면 테마의 다른 모든 속성이 미리 정의된 테마에서 지정한 값으로 변경됩니다. 그래프의 활성 테마 유형을 변경하면 연결된 모든 시리즈가 새 테마를 사용하도록 재설정됩니다.
액세스 함수:
| Q3DTheme::Theme | type() const |
| void | setType(Q3DTheme::Theme themeType) |
알림 신호:
| void | typeChanged(Q3DTheme::Theme themeType) |
windowColor : QColor
이 속성은 그래프가 그려지는 애플리케이션 창의 색상을 지정합니다.
액세스 함수:
| QColor | windowColor() const |
| void | setWindowColor(const QColor &color) |
알림 신호:
| void | windowColorChanged(const QColor &color) |
멤버 함수 설명서
[explicit] Q3DTheme::Q3DTheme(QObject *parent = nullptr)
ThemeUserDefined 유형의 새 테마를 생성합니다. 선택 사항인 parent 매개변수를 지정할 수 있으며, 이 경우 해당 매개변수는 QObject 생성자에 전달됩니다.
[explicit] Q3DTheme::Q3DTheme(Q3DTheme::Theme themeType, QObject *parent = nullptr)
themeType 를 사용하여 새로운 테마를 생성합니다. 여기서 `theme`은 Theme 에 나열된 내장 테마 중 하나일 수 있습니다. 선택 사항인 ` parent ` 매개변수를 지정할 수 있으며, 이 경우 해당 매개변수는 QObject 생성자에 전달됩니다.
[virtual noexcept] Q3DTheme::~Q3DTheme()
테마를 망쳐버린다.
© 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.