Class: QgsMeshDatasetSourceInterface

class qgis.core.QgsMeshDatasetSourceInterface

Bases: sip.wrapper

Interface for mesh datasets and dataset groups

Dataset is a collection of vector or scalar values on vertices or faces of the mesh. Based on the underlying data provider/format, whole dataset is either stored in memory or read on demand

Datasets are grouped in the dataset groups. A dataset group represents a measured quantity (e.g. depth or wind speed), dataset represents values of the quantity in a particular time.

Note

The API is considered EXPERIMENTAL and can be changed without a notice

Methods

addDataset

Associate dataset with the mesh

areFacesActive

Returns whether the faces are active for particular dataset

datasetCount

Returns number of datasets loaded in the group

datasetGroupCount

Returns number of datasets groups loaded

datasetGroupMetadata

Returns dataset group metadata

datasetMetadata

Returns dataset metadata

datasetValue

Returns vector/scalar value associated with the index from the dataset To read multiple continuous values, use QgsMeshDatasetSourceInterface.datasetValues()

datasetValues

Returns N vector/scalar values from the index from the dataset

extraDatasets

Returns list of additional dataset file URIs added using addDataset() calls.

isFaceActive

Returns whether the face is active for particular dataset

persistDatasetGroup

Creates a new dataset group from a data and persists it into a destination path

addDataset(self, uri: str) → bool

Associate dataset with the mesh

emits dataChanged when successful

Parameters

uri (str) –

Return type

bool

areFacesActive(self, index: QgsMeshDatasetIndex, faceIndex: int, count: int)QgsMeshDataBlock

Returns whether the faces are active for particular dataset

New in version 3.6.

Parameters
Return type

QgsMeshDataBlock

datasetCount(self, groupIndex: int) → int

Returns number of datasets loaded in the group

datasetCount(self, index: QgsMeshDatasetIndex) -> int Returns number of datasets loaded in the group

Parameters

groupIndex (int) –

Return type

int

datasetGroupCount(self) → int

Returns number of datasets groups loaded

Return type

int

datasetGroupMetadata(self, groupIndex: int)QgsMeshDatasetGroupMetadata

Returns dataset group metadata

datasetGroupMetadata(self, index: QgsMeshDatasetIndex) -> QgsMeshDatasetGroupMetadata Returns dataset group metadata

Parameters

groupIndex (int) –

Return type

QgsMeshDatasetGroupMetadata

datasetMetadata(self, index: QgsMeshDatasetIndex)QgsMeshDatasetMetadata

Returns dataset metadata

Parameters

index (QgsMeshDatasetIndex) –

Return type

QgsMeshDatasetMetadata

datasetValue(self, index: QgsMeshDatasetIndex, valueIndex: int)QgsMeshDatasetValue

Returns vector/scalar value associated with the index from the dataset To read multiple continuous values, use QgsMeshDatasetSourceInterface.datasetValues()

See QgsMeshDatasetMetadata.isVector() or QgsMeshDataBlock.type() to check if the returned value is vector or scalar

Parameters
Return type

QgsMeshDatasetValue

datasetValues(self, index: QgsMeshDatasetIndex, valueIndex: int, count: int)QgsMeshDataBlock

Returns N vector/scalar values from the index from the dataset

See QgsMeshDatasetMetadata.isVector() to check if the returned value is vector or scalar

New in version 3.6.

Parameters
Return type

QgsMeshDataBlock

extraDatasets(self) → List[str]

Returns list of additional dataset file URIs added using addDataset() calls.

Return type

List[str]

isFaceActive(self, index: QgsMeshDatasetIndex, faceIndex: int) → bool

Returns whether the face is active for particular dataset

For example to represent the situation when F1 and F3 are flooded, but F2 is dry, some solvers store water depth on vertices V1-V8 (all non-zero values) and set active flag for F2 to False. V1 —- V2 —- V5—–V7 | F1 | F2 | F3 | V3 —- V4 —- V6—–V8

Parameters
Return type

bool

persistDatasetGroup(self, path: str, meta: QgsMeshDatasetGroupMetadata, datasetValues: Iterable[QgsMeshDataBlock], datasetActive: Iterable[QgsMeshDataBlock], times: Iterable[float]) → bool

Creates a new dataset group from a data and persists it into a destination path

On success, the mesh’s dataset group count is changed

Parameters
  • path (str) – destination path of the stored file

  • meta (QgsMeshDatasetGroupMetadata) – new group’s metadata

  • datasetValues (Iterable[QgsMeshDataBlock]) – scalar/vector values for all datasets and all faces/vertices in the group

  • datasetActive (Iterable[QgsMeshDataBlock]) – active flag values for all datasets in the group. Empty array represents can be used when all faces are active

  • times (Iterable[float]) – times in hours for all datasets in the group

Return type

bool

Returns

True on failure, False on success

New in version 3.6.