AbstractGraph3D QML 类型

3D 图的基类。 更多...

导入语句import QtGraphs
继承自

Bars3DScatter3DSurface3D

状态技术预览

属性

方法

详细说明

QtGraphs中所有3D图表的基本类型。

此类型无法创建,但它包含在3D图表类型之间共享的属性。

另请参阅Bars3DScatter3DSurface3DQt Graphs C++类 3D图表

属性说明

aspectRatio : 实数

在水平面最长轴和y轴之间图例缩放的比率。默认值为2.0

注意:Bars3D无影响。

另请参阅horizontalAspectRatio


cameraPreset : AbstractGraph3D.CameraPreset

当前活动相机预设,它是AbstractGraph3D.CameraPreset中的一种。如果没有活动预设,则该值为AbstractGraph3D.CameraPreset.None


cameraTargetPosition : vector3d

相机目标作为vector3d。默认为vector3d(0.0, 0.0, 0.0)

有效坐标值在-1.0...1.0之间,边缘值表示对应轴范围的边缘。任何超出此范围的值将被限制在边缘。

注意:对于条形图,Y坐标被忽略,相机始终针对水平背景上的一个点。


cameraXRotation : float

从当前基准位置开始的相机围绕目标点的X旋转角度(以度为单位)。


cameraYRotation : float

从当前基准位置开始的相机围绕目标点的Y旋转角度(以度为单位)。


cameraZoomLevel : float

相机缩放级别(百分比)。默认值100.0意味着在相机中没有设置缩放或缩放。此值受< ВеликminCameraZoomLevel和<а href="qml-qtgraphs-abstractgraph3d.html#maxCameraZoomLevel-prop" translate="no">maxCameraZoomLevel属性的约束。

另请参阅minCameraZoomLevelmaxCameraZoomLevel


currentFps : int

当启用每秒帧数测量时,存储上秒钟结果的只读属性在此处。测量激活后,至少需要一秒钟此值才会更新。

另请参阅 measureFps


customItemList : list<Custom3DItem>

在图表中添加的Custom3DItem项目的列表。图表将获取添加项的所有权。


horizontalAspectRatio : real

图形在X轴和Z轴之间的缩放比例。值为 0.0 表示根据轴范围自动缩放。默认值为 0.0

注意: 对处理水平平面缩放Bars3D无影响,这是通过 barThicknessbarSpacing 属性来实现的。极坐标图也忽略此属性。

另请参阅 aspectRatiopolarBars3D::barThicknessBars3D::barSpacing


inputHandler : AbstractInputHandler3D

在图表中使用的活动输入处理程序。您可以通过将此属性设置为null来禁用默认输入处理程序。


locale : locale

设置用于格式化各种数值标签的区域设置。默认为 "C" 区域设置。

另请参阅 ValueAxis3D::labelFormat


margin : real

用于在绘图区域边缘和图表背景边缘之间留出的空白的绝对值。

如果边缘值是负的,边缘将由系统自动确定,并且可以根据时间序列中项目的尺寸和图表类型而变化。如果图表的纵横比尚未从默认值更改,则值被解释为y轴范围的分数。默认值为 -1.0

注意: 将散点图的边缘边距设置为比自动确定边距小,可能导致图表边缘上的散点项与图表背景重叠。

注意: 在散点和表面图中,如果与轴标签大小相比边距较小,则调整轴线边缘标签的位置以避免与相邻轴的边缘标签重叠。


maxCameraZoomLevel : float

设置允许的最大相机缩放级别。如果新最大级别低于现有最小级别,则将最小级别调整为新最大级别。如果当前的 cameraZoomLevel 超出新的范围,则也会做出调整。默认值为 500.0f

另请参阅 cameraZoomLevelminCameraZoomLevel


measureFps : bool

如果为 true,则渲染将连续进行,而不是按需进行,并且 currentFps 属性将更新。默认值为 false

另请参阅 currentFps


minCameraZoomLevel : float

设置允许的最小相机缩放级别。如果新的最小级别高于现有的最大级别,则最大级别也会调整为新的最小级别。如果当前的 cameraZoomLevel 超出了新的边界,它也会被调整。minCameraZoomLevel 不能低于 1.0。默认为 10.0

另请参阅 cameraZoomLevelmaxCameraZoomLevel


msaaSamples : int

renderingModeIndirect 时,用于多采样抗锯齿的样本数量。当 renderingModeDirectToBackground 时,此属性值是只读的,并返回由窗口表面格式指定的样本数量。默认为 4

另请参阅 renderingMode


optimizationHint : AbstractGraph3D.OptimizationHint

是否使用默认的、静态的或遗留模式进行渲染优化。

默认模式使用实例化渲染,并在大多数系统上以最佳性能提供完整的功能集。静态模式优化图形渲染,适用于大型非变化的数据集。在处理动态数据更改和项目旋转时较慢。选择项不会被优化,因此不推荐使用静态模式与大量数据集一起使用。遗留模式单独渲染图形中的所有项目,不使用实例化。仅在默认模式无效时(即目标系统不支持实例化时)才应使用。默认为 Default

注意: 在有些环境中,使用静态优化的大图可能无法渲染,因为所有项目都是使用单个绘制调用来渲染的,而不同的图形驱动程序支持每个调用不同的最大顶点数。这主要是在 32 位和 OpenGL ES2 平台上出现的问题。为了解决这个问题,可以选择具有低顶点数的项目网格或使用点网格。

另请参阅 Abstract3DSeries::meshQAbstract3DGraph::OptimizationHint


orthoProjection : bool

如果 true,将使用正交投影来显示图形。默认为 false

注意: 当设置为 true 时将禁用阴影。


polar : bool

如果 true,水平轴将更改为极坐标轴。x 轴成为角度轴,z 轴成为径向轴。极坐标模式不适用于柱状图。

默认为 false

另请参阅 orthoProjectionradialLabelOffset


queriedGraphPosition : vector3d

此只读属性包含使用 Scene3D::graphPositionQuery 查询的每个轴的最新图形位置值。这些值将被归一化到范围 [-1, 1]。如果查询的位置超出了图形边界,则值不会反映实际位置,而是将变为范围 [-1, 1] 之外的一些未定义位置。在查询之前,此值将是未定义的。

没有单一的 3D 坐标可以匹配特定的屏幕位置,因此为了保持一致,查询始终针对围绕图形的无形盒的内部边进行。

注意:柱状图只允许在图表楼面级别查询图表位置,因此柱状图的y值始终为零,只有屏幕位置包含图表楼面时才能进行有效查询。

另请参阅:Scene3D::graphPositionQuery


radialLabelOffset : real

此属性指定径向极坐标轴标签的归一化水平偏移。值 0.0 表示标签应绘制在0角度的角轴网格线旁边。值 1.0 表示标签将在图表背景边缘的常规位置绘制。如果极属性值为 false,则忽略此属性。默认值为 1.0

另请参阅:polar


renderingMode : AbstractGraph3D.RenderingMode

图表的渲染方式。默认为 Indirect

常量说明
DirectToBackground指示图表将直接渲染到窗口背景,QML项将在其上绘制。如果使用非透明QML项作为背景,则将隐藏图表。在渲染图表之前清除整个窗口,包括图表外的区域。如果窗口的表面格式支持抗锯齿,则将使用它(请参阅 QtGraphs::qDefaultSurfaceFormat())。这种渲染模式以牺牲非标准QML行为为代价提供了最佳性能。例如,图表不遵守QML项的z排序,并且不透明度值对它们没有影响。
Indirect指示图表将首先渲染到离屏表面,然后在此表面的正常QML项绘制期间绘制。如果当前环境支持多采样并msaaSamples属性值为大于零,则渲染的图像将使用多采样方法进行抗锯齿。这种渲染模式以牺牲性能为代价提供了良好的质量和正常QML项行为。

注意:在OpenGL ES2环境中,任何渲染模式都不支持抗锯齿。

注意:设置图表的antialiasing属性没有任何作用。但是,如果当前渲染模式使用抗锯齿,则图表会自己设置它。

另请参阅:msaaSamples


scene : Scene3D

可以使用此Scene3D指针来操作场景并访问场景元素。

此属性为只读。


selectedElement : AbstractGraph3D.ElementType

在图表中选中的元素。

可以使用此属性查询选元素类型。类型有效直到在图表中做出新的选择并且发出selectedElementChanged信号。

此信号可用于实现自定义输入处理,例如,在Axis Handling示例中所展示。

另请参阅 selectedLabelIndex(),selectedAxis(),selectedCustomItemIndex(),selectedCustomItem(),Bars3D::selectedSeriesScatter3D::selectedSeriesScene3D::selectionQueryPosition,以及QAbstract3DGraph::ElementType


selectionMode : AbstractGraph3D.SelectionMode

图中活动选择模式。QAbstract3DGraph::SelectionFlag枚举值之一。

另请参阅 QAbstract3DGraph::SelectionFlag


shadowQuality : AbstractGraph3D.ShadowQuality

阴影的质量。QAbstract3DGraph::ShadowQuality枚举值之一。

另请参阅 QAbstract3DGraph::ShadowQuality


theme : Theme3D

图的活动主题。

另请参阅 Theme3D


wrapCameraXRotation : bool

在X旋转的最小和最大限制中的行为。默认情况下,X旋转从最小值到最大值,从最大值到最小值。

如果设置为 true,摄像机的X旋转将从最小值到最大值,从最大值到最小值进行包裹。如果设置为 false,摄像机的X旋转将限制在由最小值和最大值确定的扇区。


wrapCameraYRotation : bool

在Y旋转的最小和最大限制中的行为。默认情况下,Y旋转限制在最小值和最大值之间,没有包裹。

如果 true,摄像机的Y旋转将从最小值到最大值,从最大值到最小值进行包裹。如果 false,摄像机的Y旋转将限制在由最小值和最大值确定的扇区。


方法文档

int addCustomItem(Custom3DItem item)

向图中添加一个 Custom3DItem item。图将获取添加项的所有权。

如果添加成功,则返回添加项的索引;如果尝试添加空项,则返回-1;如果尝试添加已添加项,则返回该项的索引。

另请参阅 removeCustomItems(),removeCustomItem(),以及removeCustomItemAt()。


void clearSelection()

从所有附加的系列中清除选择。


bool hasSeries(Abstract3DSeries series)

返回series是否已添加到图中。


void releaseCustomItem(Custom3DItem item)

取回item的所有权,并将item从图中移除。

注意: 如果将相同的项再次添加到图中,则需要重新设置纹理文件。

另请参阅 Custom3DItem::textureFile


void removeCustomItem(Custom3DItem item)

移除自定义item。删除分配给它的资源。


void removeCustomItemAt(vector3d position)

移除所有位于position处的自定义项。删除为其分配的资源。


void removeCustomItems()

移除所有自定义项。删除为其分配的资源。


Abstract3DAxis selectedAxis()

在接收到任何标签类型的 selectedElementChanged 信号后,可以用来获取选择后的轴。选择在下一个 selectedElementChanged 信号之前有效。

返回选择的轴,或者null。

参见selectedElement


Custom3DItem selectedCustomItem()

在接收到具有 ElementType.CustomItem 类型的 selectedElementChanged 信号后,可以用来获取选择后的自定义项。项的所有权仍然属于图形。选择在下一个 selectedElementChanged 信号之前有效。

返回选择的自定义项,或者null。

参见selectedElement


int selectedCustomItemIndex()

在接收到具有 ElementType.CustomItem 类型的 selectedElementChanged 信号后,可以用来查询选择的自定义项的索引。选择在下一个 selectedElementChanged 信号之前有效。

返回所选自定义项的索引,或者-1。

参见selectedElement


int selectedLabelIndex()

在接收到任何标签类型的 selectedElementChanged 信号后,可以用来查询选定标签的索引。选择在下一个 selectedElementChanged 信号之前有效。

返回选定标签的索引,或者-1。

参见selectedElement


© 2024 Qt公司。本文档中的文档贡献归其各自的拥有者所有。本文档是根据由自由软件基金会出版的 GNU自由文档许可版1.3 许可的。Qt及其相关标志是Qt公司在芬兰和其他国家的注册商标。所有其他商标均为其各自所有者的财产。