Merge meshes from all labels
If a neuroglancer mesh provider is linked to a parcellation map, and no label is given for fetching mesh fragments, collect them across all labels known in the parcellation instead of raising an error.
I think I can understand where the problem lies.
How would the user encounter this scenario? I can't help but to think that might be more elegant ways.
For example, inside parcellationmap fetch method, when it calls volume's fetch method, it could pass it the exhaustive list of MapIndex.
the commits is already merge into main by way of https://github.com/FZJ-INM1-BDA/siibra-python/commit/d66c62ca467037c128551ec923eb8c8ea1551386 ?
so perhaps we can close this PR?
I am not really happy with any of those. It is somewhat a flaw in the creation of the neuroglancer meshes, or in the design of the mesh data format. I think there should be a json on the neuroglancer side which allows to read out the labels available there (without having access to get a director listing from the server). Isn't there such a thing?
I am not really happy with any of those. It is somewhat a flaw in the creation of the neuroglancer meshes, or in the design of the mesh data format. I think there should be a json on the neuroglancer side which allows to read out the labels available there (without having access to get a director listing from the server). Isn't there such a thing?
One could argue that, such standard doesn't exist for nifti either. One must use something like np.unique to find all labels.
In theory, one could go through the segmentation volume, and find all unique labels, but it's not computationally efficient, especially for large volumes.
@dickscheid and @xgui3783, is it safe to assume, this PR is not relevant for version 1 anymore and it will be revisited along with the refactor of how meshes are handled in siibra-python?