From f6de182eb6fb0a96ba7b5d78c940227a987db622 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Tue, 22 Feb 2022 08:08:41 +0100 Subject: [PATCH] get information about dataset labels --- python/damask/_table.py | 2 +- python/damask/_vtk.py | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/python/damask/_table.py b/python/damask/_table.py index 9ba48596e..cdbecac93 100644 --- a/python/damask/_table.py +++ b/python/damask/_table.py @@ -259,7 +259,7 @@ class Table: Table data from file. """ - f = open(fname) if isinstance(fname, (str, Path)) else fname + f = open(Path(fname).expanduser()) if isinstance(fname, (str, Path)) else fname f.seek(0) comments = [] diff --git a/python/damask/_vtk.py b/python/damask/_vtk.py index 1336cc996..80284582c 100644 --- a/python/damask/_vtk.py +++ b/python/damask/_vtk.py @@ -60,12 +60,25 @@ class VTK: """Number of points in vtkdata.""" return self.vtk_data.GetNumberOfPoints() - @property def N_cells(self) -> int: """Number of cells in vtkdata.""" return self.vtk_data.GetNumberOfCells() + @property + def labels(self): + """Labels of datasets.""" + labels = {} + + cell_data = self.vtk_data.GetCellData() + if c := [cell_data.GetArrayName(a) for a in range(cell_data.GetNumberOfArrays())]: + labels['Cell Data'] = c + + point_data = self.vtk_data.GetPointData() + if p := [point_data.GetArrayName(a) for a in range(point_data.GetNumberOfArrays())]: + labels['Point Data'] = p + + return labels @staticmethod def from_image_data(cells: IntSequence,