QtGraphs3D Namespace

QtGraphs3D 模块提供用于QtGraphs' 3D API 的枚举。更多

头文件: #include <QtGraphs3D>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: QT += graphs

类型

enum class CameraPreset { NoPreset, FrontLow, Front, FrontHigh, LeftLow, …, DirectlyBelow }
enum class ElementType { None, Series, AxisXLabel, AxisYLabel, AxisZLabel, CustomItem }
enum class GridLineType { Shader, Geometry }
enum class OptimizationHint { Default, Legacy }
enum class RenderingMode { DirectToBackground, Indirect }
enum class SelectionFlag { None, Item, Row, ItemAndRow, Column, …, MultiSeries }
flags SelectionFlags
enum class ShadowQuality { None, Low, Medium, High, SoftLow, …, SoftHigh }
(since 6.9) enum class TransparencyTechnique { Default, Approximate, Accurate }

详细描述

类型文档

enum class QtGraphs3D::CameraPreset

摄像机的预定义位置

常数说明
QtGraphs3D::CameraPreset::NoPreset0用于表示未设置预置或场景已自由旋转。
QtGraphs3D::CameraPreset::FrontLow1摄像机的 x 和 y 旋转角度均为 0。
QtGraphs3D::CameraPreset::Front2X 旋转角度为 0,Y 旋转角度为 22.5 度。
QtGraphs3D::CameraPreset::FrontHigh3X 旋转为 0,Y 旋转为 45 度。
QtGraphs3D::CameraPreset::LeftLow4X 轴旋转 90 度,Y 轴旋转 0 度。
QtGraphs3D::CameraPreset::Left5X 旋转 90 度,Y 旋转 22.5 度。
QtGraphs3D::CameraPreset::LeftHigh6X 旋转 90 度,Y 旋转 45 度。
QtGraphs3D::CameraPreset::RightLow7X 旋转为 -90,Y 旋转为 0 度。
QtGraphs3D::CameraPreset::Right8X 旋转为 -90,Y 旋转为 22.5 度。
QtGraphs3D::CameraPreset::RightHigh9X 旋转为 -90,Y 旋转为 45 度。
QtGraphs3D::CameraPreset::BehindLow10X 旋转 180,Y 旋转 0 度。
QtGraphs3D::CameraPreset::Behind11X 旋转 180,Y 旋转 22.5 度。
QtGraphs3D::CameraPreset::BehindHigh12X 旋转 180 度,Y 旋转 45 度。
QtGraphs3D::CameraPreset::IsometricLeft13X 旋转 45 度,Y 旋转 22.5 度。
QtGraphs3D::CameraPreset::IsometricLeftHigh14X 旋转 45 度,Y 旋转 45 度。
QtGraphs3D::CameraPreset::IsometricRight15X 旋转为 -45,Y 旋转为 22.5 度。
QtGraphs3D::CameraPreset::IsometricRightHigh16X 轴旋转为 -45,Y 轴旋转为 45 度。
QtGraphs3D::CameraPreset::DirectlyAbove17X 轴旋转为 0,Y 轴旋转为 90 度。
QtGraphs3D::CameraPreset::DirectlyAboveCW4518X 旋转为 -45,Y 旋转为 90 度。
QtGraphs3D::CameraPreset::DirectlyAboveCCW4519X 旋转 45 度,Y 旋转 90 度。
QtGraphs3D::CameraPreset::FrontBelow20X 轴旋转为 0,Y 轴旋转为 -45 度。在Q3DBarsWidgetItem FrontBelow 以后的版本中,这些参数仅适用于包含负值的图形。它们的作用与 CameraPreset...Low 相同,仅适用于正值。
QtGraphs3D::CameraPreset::LeftBelow21X 旋转 90 度,Y 旋转 -45 度。
QtGraphs3D::CameraPreset::RightBelow22X 轴旋转 90 度,Y 轴旋转 -45 度。
QtGraphs3D::CameraPreset::BehindBelow23X 旋转 180 度,Y 旋转 -45 度。
QtGraphs3D::CameraPreset::DirectlyBelow24X 轴旋转为 0,Y 轴旋转为 -90 度。对于仅正向的条形图,作用与 FrontLow 相同。

enum class QtGraphs3D::ElementType

图形中元素的类型。

常量说明
QtGraphs3D::ElementType::None0未定义元素。
QtGraphs3D::ElementType::Series1系列中的一个项目。
QtGraphs3D::ElementType::AxisXLabel2x 轴标签。
QtGraphs3D::ElementType::AxisYLabel3y 轴标签
QtGraphs3D::ElementType::AxisZLabel4z 轴标签
QtGraphs3D::ElementType::CustomItem5自定义项目。

enum class QtGraphs3D::GridLineType

常数说明
QtGraphs3D::GridLineType::Shader0网格线通过着色器中的 GPU 渲染。
QtGraphs3D::GridLineType::Geometry1网格线与 3D 模型一起渲染。

enum class QtGraphs3D::OptimizationHint

渲染的优化提示。

常数说明
QtGraphs3D::OptimizationHint::Default0以良好的性能提供带实例化的完整功能集。
QtGraphs3D::OptimizationHint::Legacy1以合理的性能提供完整的功能集。如果 OptimizationHint.Default 性能较差或不起作用,则使用该值。

enum class QtGraphs3D::RenderingMode

常数说明
QtGraphs3D::RenderingMode::DirectToBackground0表示图形将直接呈现在窗口背景上,而 QML 项目将呈现在图形之上。使用非透明的 QML 项目作为背景将隐藏图形。在渲染图形前清除整个窗口,包括图形以外的区域。如果窗口的表面格式支持抗锯齿,则会使用抗锯齿(请参阅QQuick3D::idealSurfaceFormat() )。这种渲染模式提供了最佳性能,但却牺牲了非标准的 QML 行为。例如,图形不服从 QML 项的 Z 排序,不透明度值对图形也没有影响。
QtGraphs3D::RenderingMode::Indirect1表示图形将首先渲染到屏幕外表面,然后在正常的 QML 项目渲染过程中绘制。如果当前环境支持多采样方法,且 msaaSamples 属性值大于零,则会使用多采样方法对渲染图像进行抗锯齿处理。这种渲染模式提供了良好的质量和正常的 QML 项行为,但牺牲了性能。

枚举类 QtGraphs3D::SelectionFlag
flags QtGraphs3D::SelectionFlags

项目选择模式。此枚举的值可以用 OR 运算符组合。

常量说明
QtGraphs3D::SelectionFlag::None0x00禁用选择模式。
QtGraphs3D::SelectionFlag::Item0x01选择突出显示单个项目。
QtGraphs3D::SelectionFlag::Row0x02选择突出显示单行。
QtGraphs3D::SelectionFlag::ItemAndRowItem | Row组合标记,用不同颜色高亮显示项目和行。
QtGraphs3D::SelectionFlag::Column0x04选择突出显示单列。
QtGraphs3D::SelectionFlag::ItemAndColumnItem | Column以不同颜色突出显示项和列的组合标记。
QtGraphs3D::SelectionFlag::RowAndColumnRow | Column高亮显示行和列的组合标记。
QtGraphs3D::SelectionFlag::ItemRowAndColumnItem | Row | Column组合标记用于突出显示项、行和列。
QtGraphs3D::SelectionFlag::Slice0x08设置该模式标记表示图形应自动处理切片视图。如果希望通过Q3DScene 自行控制切片视图,请不要设置此标记。设置此模式标志时,必须同时设置RowColumn ,但不能同时设置。切片模式仅由Q3DBarsWidgetItemQ3DSurfaceWidgetItem 支持。设置此标记后,在以下情况下将进入切片模式:
  • 通过系列 API 将选择显式更改为可见项时
  • 通过点击图形更改选择时
  • 选择模式发生变化且所选项可见时
QtGraphs3D::SelectionFlag::MultiSeries0x10设置该模式意味着同一位置的所有系列的项目都会突出显示,而不仅仅是选中的项目。其他序列中的实际选择不会改变。设置该模式标记时,必须同时设置一个或多个基本选择标记(Item,Row, 或Column )。Q3DScatterWidgetItem 不支持多系列选择。

SelectionFlags 类型是QFlags<SelectionFlag> 的类型定义。它存储 SelectionFlag 值的 OR 组合。

enum class QtGraphs3D::ShadowQuality

阴影的质量

恒定说明
QtGraphs3D::ShadowQuality::None0禁用阴影。
QtGraphs3D::ShadowQuality::Low1阴影以低质量渲染。
QtGraphs3D::ShadowQuality::Medium2以中等质量渲染阴影。
QtGraphs3D::ShadowQuality::High3以高质量渲染阴影。
QtGraphs3D::ShadowQuality::SoftLow4阴影以软化边缘的低质量渲染。
QtGraphs3D::ShadowQuality::SoftMedium5阴影以中等质量渲染,边缘柔化。
QtGraphs3D::ShadowQuality::SoftHigh6阴影以高质量渲染,边缘柔化。

[since 6.9] enum class QtGraphs3D::TransparencyTechnique

指定要使用的透明度技术。默认值为Default 。渲染透明曲面图时,请使用ApproximateAccurate

常量说明
QtGraphs3D::TransparencyTechnique::Default0表示不使用与阶次无关的透明技术。提供最佳性能。当图形不包含透明度或条形图或散点图也使用实例化时使用,即optimizationHint为 {QtGraphs3D::OptimizationHint::Default}。
QtGraphs3D::TransparencyTechnique::Approximate1表示图形尝试近似与阶无关的透明度。这种方法比Accurate 更快,而且可以在较旧的硬件上运行,但可能产生不准确的结果。当需要与阶次无关的透明度,但性能成本必须低于使用精确的与阶次无关的透明度时,可以使用这种方法。
QtGraphs3D::TransparencyTechnique::Accurate2表示使用与阶次无关的精确透明度。在需要完美的透明度渲染时使用。

注: 精确透明尚未实现,将在所需功能添加到QtQuick3D 后启用。

此枚举在 Qt 6.9 中引入。

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