QValue3DAxisFormatter 类
QValue3DAxisFormatter 类是 3D 值轴格式化器的基类。更多...
头文件 | #include <QValue3DAxisFormatter> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
qmake | QT += graphs |
实例化 | ValueAxis3DFormatter |
继承自 | QObject |
继承给 | |
状态 | 技术预览 |
- 所有成员列表,包括继承成员
- QValue3DAxisFormatter 是 Qt Graphs C++ 类的一部分,其用途为 3D。Qt Graphs C++ Classes for 3D.
公共函数
QValue3DAxisFormatter(QObject *parent = nullptr) | |
虚拟 | ~QValue3DAxisFormatter() override |
受保护函数
布尔 | allowNegatives() const |
布尔 | allowZero() const |
QValue3DAxis * | axis() const |
虚拟 QValue3DAxisFormatter * | createNewInstance() const |
const QList<float> & | gridPositions() const |
const QList<float> & | labelPositions() const |
const QStringList & | labelStrings() const |
QLocale | locale() const |
void | markDirty(bool labelsChange = false) |
虚拟 void | populateCopy(QValue3DAxisFormatter ©) |
虚拟 float | positionAt(float value) const |
虚拟 void | recalculate() |
void | setAllowNegatives(bool allow) |
void | setAllowZero(bool allow) |
void | setGridPoitions(QList<float> gridPositions) |
void | setLabelStrings(QStringList labelStrings) |
void | setLocale(const QLocale &locale) |
void | setSubGridPositions(QList<float> subGridPositions) |
void | setlabelPositions(QList<float> labelPositions) |
虚拟 QString | stringForValue(qreal value, const QString &format) |
const QList<float> & | subGridPositions() const |
虚拟 float | valueAt(float position) const |
参见 QValue3DAxis 和 QLogValue3DAxisFormatter。
成员函数文档
[显式]
QValue3DAxisFormatter::QValue3DAxisFormatter(QObject *parent = nullptr)
使用可选的父对象 parent 构造一个新的值3D轴格式化器。
[覆盖 虚拟 noexcept]
QValue3DAxisFormatter::~QValue3DAxisFormatter()
删除值3D轴格式化器。
[受保护]
bool QValue3DAxisFormatter::allowNegatives() const
如果父轴的有效值包括负值则返回 true
。默认实现始终返回 true
。
[受保护]
bool QValue3DAxisFormatter::allowZero() const
如果父轴的有效值包括零则返回 true
。默认实现始终返回 true
。
参见 setAllowZero。
[受保护]
QValue3DAxis *QValue3DAxisFormatter::axis() const
返回父轴。仅应在 recalculate() 方法中访问父轴,以维护使用线程渲染器的环境中的线程安全。
参见 recalculate。
[虚拟保护]
QValue3DAxisFormatter *QValue3DAxisFormatter::createNewInstance() const
创建一个新的空值3D轴格式化器。必须在子类中重实现。
返回新的格式化器。渲染器使用此方法缓存格式化器的副本。新副本的所有权转移给调用者。
[受保护]
const QList<float> &QValue3DAxisFormatter::gridPositions() const
返回归一化网格线位置的数组的引用。默认数组大小等于父轴的段数加一,但子类实现的 recalculate() 方法可能按不同的方式调整数组大小。
参见 QValue3DAxis::segmentCount 和 recalculate。
[受保护]
const QList<float> &QValue3DAxisFormatter::labelPositions() const
返回归一化标签位置的数组的引用。默认数组大小等于父轴的段数加一,但子类实现的 recalculate() 方法可能按不同的方式调整数组大小。默认情况下,索引为零的标签对应于轴的最小值。
参见 QValue3DAxis::segmentCount、QAbstract3DAxis::labels 和 recalculate。
[protected]
const QStringList &QValue3DAxisFormatter::labelStrings() const
返回包含格式化标签字符串的字符串列表的引用。
参见 setLabelStrings() 和 labelPositions。
[protected]
QLocale QValue3DAxisFormatter::locale() const
返回此格式化当前使用的区域。
参见 setLocale。
[protected]
void QValue3DAxisFormatter::markDirty(bool labelsChange = false)
标记此格式化为脏状态,提示渲染器在下次渲染同步时创建其缓存的新的副本。子类应在格式化器的更改会影响解析值时调用此方法。如果更改需要重新生成父轴的标签字符串,则将labelsChange设置为true
。
[虚拟受保护]
void QValue3DAxisFormatter::populateCopy(QValue3DAxisFormatter ©)
将解析位置、值和字符串所需的全部值复制到格式化器的copy中。在子类中重新实现此方法时,应在某个位置调用父类版本。渲染器使用此方法缓存格式化器的副本。
返回新的副本。新的副本的所有权转移到调用者。
[虚拟受保护]
float QValue3DAxisFormatter::positionAt(float value) const
返回给定value在轴上的归一化位置。如果值在父轴范围内,则返回的值应在0.0
(最小值)和1.0
(最大值),包括在内的范围内。
如果位置不能通过在父轴最小值和最大值之间进行线性插值来解决,则重新实现此方法。
参见 recalculate 和 valueAt。
[虚拟受保护]
void QValue3DAxisFormatter::recalculate()
调整和填充标签和网格线位置数组以及标签字符串数组,以及计算将值映射到其位置的任何需要的值。可以在该函数内部访问父轴。
如果默认数组内容不合适,必须在此子类中重新实现此方法。
有关需要调整和填充的数组的文档,参见gridPositions、subGridPositions、labelPositions 和 labelStrings 方法。
另请参阅gridPositions()、subGridPositions()、labelPositions()、labelStrings() 以及 axis。
[protected]
void QValue3DAxisFormatter::setAllowNegatives(bool allow)
如果 allow 为 true
,则允许父轴有负值。
另请参阅allowNegatives。
[protected]
void QValue3DAxisFormatter::setAllowZero(bool allow)
如果 allow 为 true
,则允许父轴有零值。
另请参阅allowZero。
[protected]
void QValue3DAxisFormatter::setGridPoitions(QList<float> gridPositions)
设置来自 gridPositions 的新网格位置列表。值应在 0.0
(最小值)和 1.0
(最大值)之间,包括这两个值。
另请参阅QValue3DAxis::segmentCount、recalculate 以及 gridPositions。
[protected]
void QValue3DAxisFormatter::setLabelStrings(QStringList labelStrings)
从 labelStrings 设置新标签字符串列表。数组大小必须等于标签位置数组的大小,其中索引也对应。
另请参阅labelPositions() 和 labelStrings。
[protected]
void QValue3DAxisFormatter::setLocale(const QLocale &locale)
设置此格式器使用的 locale。当父轴设置为图表的活动轴、轴格式器设置为连接到图表的轴或图表的 locale 发生变化时,图表会自动设置格式器的 locale。
另请参阅locale() 和 QAbstract3DGraph::locale。
[protected]
void QValue3DAxisFormatter::setSubGridPositions(QList<float> subGridPositions)
设置来自 subGridPositions 的新子网格位置列表。值应在 0.0
(最小值)和 1.0
(最大值)之间,包括这两个值。
另请参阅QValue3DAxis::segmentCount、QValue3DAxis::subSegmentCount、recalculate 以及 subGridPositions。
[protected]
void QValue3DAxisFormatter::setlabelPositions(QList<float> labelPositions)
从 labelPositions 设置新标签位置列表。值应在 0.0
(最小值)和 1.0
(最大值)之间,包括这两个值。
另请参阅 QValue3DAxis::segmentCount, QAbstract3DAxis::labels, recalculate(), 以及 labelPositions。
[虚保护]
QString QValue3DAxisFormatter::stringForValue(qreal value, const QString &format)
使用指定的 value 和 format 返回格式化的标签字符串。
在子类中重写此方法,如果为 QValue3DAxis::labelFormat 属性指定的默认格式化规则不足以解析给定 value 的格式化字符串。
另请参阅 recalculate, labelStrings, 和 QValue3DAxis::labelFormat。
[保护]
const QList<float> &QValue3DAxisFormatter::subGridPositions() const
返回归一化子网格线位置的数组引用。默认数组大小等于父轴的段数乘以父轴的子段数减一,但子类实现的 recalculate() 方法可能以不同的方式调整数组大小。
另请参阅 setSubGridPositions, QValue3DAxis::segmentCount, QValue3DAxis::subSegmentCount, 和 recalculate。
[虚保护]
float QValue3DAxisFormatter::valueAt(float position) const
返回轴上归一化 position 位置处的值。为获得父轴范围内的值,position 值应在 0.0
(最小值)和 1.0
(最大值)之间,包含这两个值。
如果值无法通过在父轴最小值和最大值之间进行线性插值来解决,则重写此方法。
另请参阅 recalculate()和 positionAt。
© 2024 Qt 公司。此处包含的文档贡献是各自所有者的版权。提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 和相关标志是芬兰以及其他国家和地区的 Qt 公司在芬兰和其他国家的商标。所有其他商标均为其各自所有者的财产。