QHeightMapSurfaceDataProxy 类
是 Q3DSurface 的基本代理类。 [更多...]
头文件 | #include <QHeightMapSurfaceDataProxy> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
qmake | QT += graphs |
实例化 | HeightMapSurfaceDataProxy |
继承自 | QSurfaceDataProxy |
状态 | 技术预览 |
- 包括继承成员在内的所有成员列表
- QHeightMapSurfaceDataProxy 是 Qt Graphs C++ 类库 3D 部分的组成部分。[查看...
属性
|
公开函数
QHeightMapSurfaceDataProxy(QObject *parent = nullptr) | |
QHeightMapSurfaceDataProxy(const QImage &image, QObject *parent = nullptr) | |
QHeightMapSurfaceDataProxy(const QString &filename, QObject *parent = nullptr) | |
virtual | ~QHeightMapSurfaceDataProxy() override |
bool | autoScaleY() const |
QImage | heightMap() const |
QString | heightMapFile() const |
float | maxXValue() const |
float | maxYValue() const |
float | maxZValue() const |
float | minXValue() const |
float | minYValue() const |
float | minZValue() const |
void | setAutoScaleY(bool enabled) |
void | setHeightMap(const QImage &image) |
void | setHeightMapFile(const QString &filename) |
void | setMaxXValue(float max) |
void | setMaxYValue(float max) |
void | setMaxZValue(float max) |
void | setMinXValue(float min) |
void | setMinYValue(float min) |
void | setMinZValue(float min) |
void | setValueRanges(float minX, float maxX, float minZ, float maxZ) |
信号
void | autoScaleYChanged(bool enabled) |
void | heightMapChanged(const QImage &image) |
void | heightMapFileChanged(const QString &filename) |
void | maxXValueChanged(float value) |
void | maxYValueChanged(float value) |
void | maxZValueChanged(float value) |
void | minXValueChanged(float value) |
void | minYValueChanged(float value) |
void | minZValueChanged(float value) |
详细描述
QHeightMapSurfaceDataProxy 负责处理与表面相关的地形图数据。它提供了一种将地形图作为曲面图可视化的方式。
由于高度图不包含 X 或 Z 轴的值,这些值需要使用 minXValue、maxXValue、minZValue 和 maxZValue 属性分别给出。X 值对应于图像的水平方向,Z 值对应于垂直方向。设置任何这些属性都会触发现有地形图的异步重新求解。
另请参阅QSurfaceDataProxy 和 使用 3D 的 Qt 图表数据处理。
属性文档
autoScaleY : bool
将高度值缩放到 Y 轴。
默认值为 false
。
当此属性设置为 true
时,高度值将缩放以适应 Y 轴之间 minYValue 和 maxYValue 之间的范围。
访问函数
bool | autoScaleY() const |
void | setAutoScaleY(bool enabled) |
通知信号
void | autoScaleYChanged(bool enabled) |
heightMap : QImage
此属性包含要可视化的高度图图像。
访问函数
QImage | heightMap() const |
void | setHeightMap(const QImage &image) |
通知信号
void | heightMapChanged(const QImage &image) |
heightMapFile : QString
此属性包含要可视化的高度图图像的文件名。
访问函数
QString | heightMapFile() const |
void | setHeightMapFile(const QString &filename) |
通知信号
void | heightMapFileChanged(const QString &filename) |
maxXValue : float
该属性存储生成表面点最大X值。
默认值为10.0
。
设置此属性时,如果需要,相应的最小值将进行调整,以确保范围有效。
访问函数
float | maxXValue() const |
void | setMaxXValue(float max) |
通知信号
void | maxXValueChanged(float value) |
maxYValue : float
该属性存储生成表面点最大Y值。
默认值为10.0
。
设置此属性时,如果需要,相应的最小值将进行调整,以确保范围有效。
访问函数
float | maxYValue() const |
void | setMaxYValue(float max) |
通知信号
void | maxYValueChanged(float value) |
另请参阅autoScaleY。
maxZValue : float
该属性存储生成表面点最大Z值。
默认值为10.0
。
设置此属性时,如果需要,相应的最小值将进行调整,以确保范围有效。
访问函数
float | maxZValue() const |
void | setMaxZValue(float max) |
通知信号
void | maxZValueChanged(float value) |
minXValue : float
该属性存储生成表面点最小X值。
默认值为0.0
。
设置此属性时,如果需要,将调整相应的最大值,以确保范围有效。
访问函数
float | minXValue() const |
void | setMinXValue(float min) |
通知信号
void | minXValueChanged(float value) |
minYValue : float
该属性存储生成表面点最小Y值。
默认值为0.0
。
设置此属性时,如果需要,将调整相应的最大值,以确保范围有效。
访问函数
float | minYValue() const |
void | setMinYValue(float min) |
通知信号
void | minYValueChanged(float value) |
另请参阅autoScaleY。
minZValue : float
该属性存储生成表面点最小Z值。
默认值为0.0
。
设置此属性时,如果需要,将调整相应的最大值,以确保范围有效。
访问函数
float | minZValue() const |
void | setMinZValue(float min) |
通知信号
void | minZValueChanged(float value) |
成员函数文档
[显式]
QHeightMapSurfaceDataProxy::QHeightMapSurfaceDataProxy(QObject *parent = nullptr)
使用给定的parent构建QHeightMapSurfaceDataProxy。
[显式]
QHeightMapSurfaceDataProxy::QHeightMapSurfaceDataProxy(const QImage &image, QObject *parent = nullptr)
使用给定的image和parent构建QHeightMapSurfaceDataProxy。通过调用setHeightMap()以image设置高度图。
另请参阅heightMap。
[显式]
QHeightMapSurfaceDataProxy::QHeightMapSurfaceDataProxy(const QString &filename, QObject *parent = nullptr)
从给定的图像文件名和父元素中构建QHeightMapSurfaceDataProxy。通过调用setHeightMapFile()函数并传入图像文件名来设置高度图。
另请参阅heightMapFile。
[重写虚函数,无异常抛出]
QHeightMapSurfaceDataProxy::~QHeightMapSurfaceDataProxy()
void QHeightMapSurfaceDataProxy::setHeightMap(const QImage &image)
将当前数据替换为由图像指定的高度图数据。
可以以多种格式指定图像,但如果不处于可直接使用的格式,则会进行转换。
注意:如果结果看起来不正确,自动转换失败,请在设置之前自己尝试转换图像。最佳格式为灰度下的QImage::Format_RGB32。
如果图像为灰度,则从像素的红分量读取高度,否则从像素的红、绿、蓝分量计算平均值。使用灰度图像可以提高大图像的数据转换速度。
不推荐使用的格式:所有单色格式(例如QImage::Format_Mono)。
高度图以异步方式解析。QSurfaceDataProxy::arrayReset()在数据解析完成后发出。
注意:属性heightMap的设置器函数。
另请参阅heightMap。
void QHeightMapSurfaceDataProxy::setHeightMapFile(const QString &filename)
将当前数据替换为由文件filename指定的文件中的高度图数据。
注意:是属性heightMapFile的设置器函数。
另请参阅heightMapFile()和heightMap。
void QHeightMapSurfaceDataProxy::setValueRanges(float minX, float maxX, float minZ, float maxZ)
这是一个方便函数,用于同时设置所有最小(minX和minZ)和最大(maxX和maxZ)值。最小值必须小于相应的最大值。否则,值将进行调整以使其有效。
(c) 2024 Qt公司有限公司。本文件中包含的文档贡献的版权属于各自的所有者。本文件提供的文档根据自由软件基金会发布的GNUGFDL1.3协议的条款进行许可。Qt和相应的商标是芬兰的Qt公司在全球的商标。所有其他商标均为各自拥有者的财产。