QHeightMapSurfaceDataProxy Class

Base proxy class for Q3DSurface . 更多...

头: #include <QHeightMapSurfaceDataProxy>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: QT += graphs
实例化: HeightMapSurfaceDataProxy
继承: QSurfaceDataProxy
状态: 技术预览

特性

公共函数

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 takes care of surface related height map data handling. It provides a way to give a height map to be visualized as a surface plot.

Since height maps do not contain values for X or Z axes, those values need to be given separately using minXValue , maxXValue , minZValue ,和 maxZValue properties. X-value corresponds to image horizontal direction and Z-value to the vertical. Setting any of these properties triggers asynchronous re-resolving of any existing height map.

另请参阅 QSurfaceDataProxy and Qt Graphs Data Handling with 3D .

特性文档编制

autoScaleY : bool

Scale height values to Y-axis.

默认为 false .

当此特性被设为 true , the height values are scaled to fit on the Y-axis between minYValue and maxYValue .

访问函数:

bool autoScaleY () const
void setAutoScaleY (bool enabled )

通知程序信号:

void autoScaleYChanged (bool enabled )

另请参阅 minYValue and maxYValue .

heightMap : QImage

This property holds the height map image to be visualized.

访问函数:

QImage heightMap () const
void setHeightMap (const QImage & image )

通知程序信号:

void heightMapChanged (const QImage & image )

heightMapFile : QString

This property holds the name of the file with a height map image to be visualized.

访问函数:

QString heightMapFile () const
void setHeightMapFile (const QString & filename )

通知程序信号:

void heightMapFileChanged (const QString & filename )

maxXValue : float

This property holds the maximum X value for the generated surface points.

默认为 10.0 .

When setting this property the corresponding minimum value is adjusted if necessary, to ensure that the range remains valid.

访问函数:

float maxXValue () const
void setMaxXValue (float max )

通知程序信号:

void maxXValueChanged (float value )

maxYValue : float

This property holds the maximum Y value for the generated surface points.

默认为 10.0 .

When setting this property the corresponding minimum value is adjusted if necessary, to ensure that the range remains valid.

访问函数:

float maxYValue () const
void setMaxYValue (float max )

通知程序信号:

void maxYValueChanged (float value )

另请参阅 autoScaleY .

maxZValue : float

This property holds the maximum Z value for the generated surface points.

默认为 10.0 .

When setting this property the corresponding minimum value is adjusted if necessary, to ensure that the range remains valid.

访问函数:

float maxZValue () const
void setMaxZValue (float max )

通知程序信号:

void maxZValueChanged (float value )

minXValue : float

This property holds the minimum X value for the generated surface points.

默认为 0.0 .

When setting this property the corresponding maximum value is adjusted if necessary, to ensure that the range remains valid.

访问函数:

float minXValue () const
void setMinXValue (float min )

通知程序信号:

void minXValueChanged (float value )

minYValue : float

This property holds the minimum Y value for the generated surface points.

默认为 0.0 .

When setting this property the corresponding maximum value is adjusted if necessary, to ensure that the range remains valid.

访问函数:

float minYValue () const
void setMinYValue (float min )

通知程序信号:

void minYValueChanged (float value )

另请参阅 autoScaleY .

minZValue : float

This property holds the minimum Z value for the generated surface points.

默认为 0.0 .

When setting this property the corresponding maximum value is adjusted if necessary, to ensure that the range remains valid.

访问函数:

float minZValue () const
void setMinZValue (float min )

通知程序信号:

void minZValueChanged (float value )

成员函数文档编制

[explicit] QHeightMapSurfaceDataProxy:: QHeightMapSurfaceDataProxy ( QObject * parent = nullptr)

Constructs QHeightMapSurfaceDataProxy with the given parent .

[explicit] QHeightMapSurfaceDataProxy:: QHeightMapSurfaceDataProxy (const QImage & image , QObject * parent = nullptr)

Constructs QHeightMapSurfaceDataProxy with the given image and parent . Height map is set by calling setHeightMap () 采用 image .

另请参阅 heightMap .

[explicit] QHeightMapSurfaceDataProxy:: QHeightMapSurfaceDataProxy (const QString & filename , QObject * parent = nullptr)

Constructs QHeightMapSurfaceDataProxy from the given image filename and parent . Height map is set by calling setHeightMapFile () 采用 filename .

另请参阅 heightMapFile .

[override virtual noexcept] QHeightMapSurfaceDataProxy:: ~QHeightMapSurfaceDataProxy ()

销毁 QHeightMapSurfaceDataProxy .

void QHeightMapSurfaceDataProxy:: setHeightMap (const QImage & image )

Replaces current data with the height map data specified by image .

There are several formats the image can be given in, but if it is not in a directly usable format, a conversion is made.

注意: If the result seems wrong, the automatic conversion failed and you should try converting the image yourself before setting it. Preferred format is QImage::Format_RGB32 in grayscale.

The height of the image is read from the red component of the pixels if the image is in grayscale, otherwise it is an average calculated from red, green, and blue components of the pixels. Using grayscale images may improve data conversion speed for large images.

Not recommended formats: all mono formats (for example QImage::Format_Mono ).

The height map is resolved asynchronously. QSurfaceDataProxy::arrayReset () is emitted when the data has been resolved.

注意: setter 函数对于特性 heightMap .

另请参阅 heightMap ().

void QHeightMapSurfaceDataProxy:: setHeightMapFile (const QString & filename )

Replaces current data with height map data from the file specified by filename .

注意: setter 函数对于特性 heightMapFile .

另请参阅 heightMapFile () 和 heightMap .

void QHeightMapSurfaceDataProxy:: setValueRanges ( float minX , float maxX , float minZ , float maxZ )

A convenience function for setting all minimum ( minX and minZ ) and maximum ( maxX and maxZ ) values at the same time. The minimum values must be smaller than the corresponding maximum value. Otherwise the values get adjusted so that they are valid.