From dc20ecf355b41aef0ff4c209b3ecdb6f1368c93b Mon Sep 17 00:00:00 2001 From: BadPrograms Date: Mon, 24 Nov 2025 15:26:40 +0100 Subject: [PATCH 1/2] initial --- src/lineagetree/_io/_loaders.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/lineagetree/_io/_loaders.py b/src/lineagetree/_io/_loaders.py index 3e8ff65..49d51ef 100644 --- a/src/lineagetree/_io/_loaders.py +++ b/src/lineagetree/_io/_loaders.py @@ -106,10 +106,10 @@ def _load_meshdict_from_bmfmesh(bmfmesh, pos_multipliers, translation): translation = np.array(translation, dtype=float) vertices = vertices * pos_multipliers + translation - return { # could be a class - 'vertices': vertices, - 'faces': faces, - 'center_mass': np.mean(vertices, axis=0), + return { # could be a class + "vertices": vertices, + "faces": faces, + "center_mass": np.mean(vertices, axis=0), } @@ -150,9 +150,11 @@ def read_from_bmf( for track in tracks: pred = None for t, mesh in track.meshes.items(): - mesh = _load_meshdict_from_bmfmesh(mesh, pos_multipliers, translation) + mesh = _load_meshdict_from_bmfmesh( + mesh, pos_multipliers, translation + ) pos[cell_id] = mesh["center_mass"] - + if store_meshes: lT_mesh[cell_id] = mesh @@ -875,9 +877,11 @@ def read_from_mastodon( _, properties, _ = mr.read_tags() if isinstance(tag_set, str) and tag_set in properties: - labels = properties[tag_set] + labels, labels_name = properties[tag_set], {} elif 0 < len(properties): labels_name, labels = next(iter(properties.items())) + else: + labels, labels_name = {}, [] if not name: if isinstance(path, Path): From c63ef04f51765f7d4c1b23c1a02fc40d3c96845a Mon Sep 17 00:00:00 2001 From: BadPrograms Date: Mon, 24 Nov 2025 15:40:01 +0100 Subject: [PATCH 2/2] looks better ;) --- src/lineagetree/_io/_loaders.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lineagetree/_io/_loaders.py b/src/lineagetree/_io/_loaders.py index 49d51ef..2b87710 100644 --- a/src/lineagetree/_io/_loaders.py +++ b/src/lineagetree/_io/_loaders.py @@ -871,17 +871,17 @@ def read_from_mastodon( pos = dict(zip(nodes, spots[:, :3], strict=True)) time = dict(zip(nodes, spots[:, 3], strict=True)) predecessor = {} + labels, labels_name = {}, [] + for succ, pred in zip(links[:, 1], links[:, 0]): predecessor[int(succ)] = int(pred) _, properties, _ = mr.read_tags() if isinstance(tag_set, str) and tag_set in properties: - labels, labels_name = properties[tag_set], {} + labels = properties[tag_set] elif 0 < len(properties): labels_name, labels = next(iter(properties.items())) - else: - labels, labels_name = {}, [] if not name: if isinstance(path, Path):