QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
|
QgsMeshDataBlock is a block of integers/doubles that can be used to retrieve: active flags (e.g. More...
#include <qgsmeshdataset.h>
Public Types | |
enum | DataType { ActiveFlagInteger , ScalarDouble , Vector2DDouble } |
Type of data stored in the block. More... | |
Public Member Functions | |
QgsMeshDataBlock () | |
Constructs an invalid block. More... | |
QgsMeshDataBlock (DataType type, int count) | |
Constructs a new block. More... | |
QVector< int > | active () const |
Returns active flag array. More... | |
bool | active (int index) const |
Returns a value for active flag by the index For scalar and vector 2d the behavior is undefined. More... | |
int | count () const |
Number of items stored in the block. More... | |
bool | isValid () const |
Whether the block is valid. More... | |
void | setActive (const QVector< int > &vals) |
Sets active flag values. More... | |
void | setValid (bool valid) |
Sets block validity. More... | |
void | setValues (const QVector< double > &vals) |
Sets values. More... | |
DataType | type () const |
Type of data stored in the block. More... | |
QgsMeshDatasetValue | value (int index) const |
Returns a value represented by the index For active flag the behavior is undefined. More... | |
QVector< double > | values () const |
Returns buffer to the array with values For vector it is pairs (x1, y1, x2, y2, ... ) More... | |
QgsMeshDataBlock is a block of integers/doubles that can be used to retrieve: active flags (e.g.
face's active integer flag) scalars (e.g. scalar dataset double values) vectors (e.g. vector dataset doubles x,y values)
data are implicitly shared, so the class can be quickly copied std::numeric_limits<double>::quiet_NaN() represents NODATA value
Data can be accessed all at once with values() (faster) or value by value (slower) with active() or value()
Definition at line 137 of file qgsmeshdataset.h.
Type of data stored in the block.
Enumerator | |
---|---|
ActiveFlagInteger | Integer boolean flag whether face is active. |
ScalarDouble | Scalar double values. |
Vector2DDouble | Vector double pairs (x1, y1, x2, y2, ... ) |
Definition at line 141 of file qgsmeshdataset.h.
QgsMeshDataBlock::QgsMeshDataBlock | ( | ) |
Constructs an invalid block.
Definition at line 241 of file qgsmeshdataset.cpp.
QgsMeshDataBlock::QgsMeshDataBlock | ( | QgsMeshDataBlock::DataType | type, |
int | count | ||
) |
Constructs a new block.
Definition at line 246 of file qgsmeshdataset.cpp.
QVector< int > QgsMeshDataBlock::active | ( | ) | const |
Returns active flag array.
Even for active flag valid dataset, the returned array could be empty. This means that the data provider/dataset does not support active flag capability, so all faces are active by default.
For scalar and vector 2d the behavior is undefined
Definition at line 305 of file qgsmeshdataset.cpp.
bool QgsMeshDataBlock::active | ( | int | index | ) | const |
Returns a value for active flag by the index For scalar and vector 2d the behavior is undefined.
Definition at line 283 of file qgsmeshdataset.cpp.
int QgsMeshDataBlock::count | ( | ) | const |
Number of items stored in the block.
Definition at line 257 of file qgsmeshdataset.cpp.
bool QgsMeshDataBlock::isValid | ( | ) | const |
Whether the block is valid.
Definition at line 262 of file qgsmeshdataset.cpp.
void QgsMeshDataBlock::setActive | ( | const QVector< int > & | vals | ) |
Sets active flag values.
If the data provider/datasets does not have active flag capability (== all values are valid), just set block validity by setValid( true
)
vals | value vector with size count() |
For scalar and vector 2d the behavior is undefined
Definition at line 296 of file qgsmeshdataset.cpp.
void QgsMeshDataBlock::setValid | ( | bool | valid | ) |
Sets block validity.
Definition at line 327 of file qgsmeshdataset.cpp.
void QgsMeshDataBlock::setValues | ( | const QVector< double > & | vals | ) |
Sets values.
For scalar datasets, it must have size count() For vector datasets, it must have size 2 * count() For active flag the behavior is undefined
Definition at line 318 of file qgsmeshdataset.cpp.
QgsMeshDataBlock::DataType QgsMeshDataBlock::type | ( | ) | const |
Type of data stored in the block.
Definition at line 252 of file qgsmeshdataset.cpp.
QgsMeshDatasetValue QgsMeshDataBlock::value | ( | int | index | ) | const |
Returns a value represented by the index For active flag the behavior is undefined.
Definition at line 267 of file qgsmeshdataset.cpp.
QVector< double > QgsMeshDataBlock::values | ( | ) | const |
Returns buffer to the array with values For vector it is pairs (x1, y1, x2, y2, ... )
Definition at line 311 of file qgsmeshdataset.cpp.