BlueBrain / NeuroMorphoVis

A lightweight, interactive, extensible and cross-platform framework for building, visualizing and analyzing digital reconstructions of neuronal morphology skeletons extracted from microscopy stacks.
https://portal.bluebrain.epfl.ch/
GNU General Public License v3.0
126 stars 26 forks source link

`AttributeError` due to missing `topology_tessellation` argument in CLI options #208

Closed danburonline closed 1 month ago

danburonline commented 5 months ago

Issue Description

While attempting to run NeuroMorphoVis from the CLI, an AttributeError happened due to an attempt to access a non-existent topology_tessellation attribute on the arguments object within the NeuroMorphoVisOptions.consume_arguments method. I've seen this happen inside the soma_reconstruction.py file.

Error Message

When using this CLI command:

python neuromorphovis.py --blender=blender/bbp-blender-3.5/blender-bbp/blender --input=file --morphology-file=files/example-morphology.swc --export-soma-mesh-blend --export-soma-mesh-obj --output-directory=output

I got this error:

Output: [output]
Error: Python: Traceback (most recent call last):
  File "/app/nmv/interface/cli/soma_reconstruction.py", line 198, in <module>
    cli_options.consume_arguments(arguments=arguments)
  File "/app/nmv/interface/cli/../../../nmv/options/neuromorphovis_options.py", line 259, in consume_arguments
    arguments.topology_tessellation)
AttributeError: 'Namespace' object has no attribute 'topology_tessellation'

Blender quit

Temporary Workaround

To bypass this issue temporarily and proceed with the execution, the following lines related to topology tessellation in the NeuroMorphoVisOptions.consume_arguments method were commented out:

# self.mesh.topology_tessellation = nmv.enums.Meshing.TopologyTessellation.get_enum(
#     arguments.topology_tessellation)

This workaround allowed the script to run, but it may skip the intended configuration for topology tessellation, potentially affecting the mesh reconstruction process.