Stereotaxic Frame Module

coperniFUS’s Stereotaxic Frame Module can be populated with Armature objects which at their core can model coordinates transformations of arbitrary stereotaxic frame structures. The Stereotaxic Frame Module allows the nesting of Armature objects, which facilitates the modeling of complex frame configurations.

_images/CoperniFUS_ui_breakdown_armatures.png

Specialized armatures can be derived from the base Armature object, which allows operations to be carried out within the frame coordinates. Currently, specilized armature are implemented to handle the manipulation of mesh objects and perform acoustic simulations

Available Armatures

To interact with data from armatures, Armature objects can be grabbed using stereotaxic_frame module armatures_objects attribute.

In [1]: from coperniFUS.viewer import coperniFUSviewer
In [2]: cfv = coperniFUSviewer()
   Launching CoperniFUS
In [3]: cfv.stereotaxic_frame.armatures_objects
   {
      'Skull acoustic window': <coperniFUS.modules.armatures.mesh_armatures.STLMeshBooleanArmature at 0x317446900>,
      'Brain mesh (skull convex Hull)': <coperniFUS.modules.armatures.mesh_armatures.STLMeshConvexHull at 0x317446840>,
      'kWave 3D simulation': <coperniFUS.modules.armatures.kwave_armatures.KWave3dSimulationArmature at 0x317446780>,
      'Main frame': <coperniFUS.modules.armatures.base_armature.Armature at 0x317446750>
   }

Stereotaxic Frame Module class

class coperniFUS.modules.stereotaxic_frame.StereotaxicFrame(parent_viewer, **kwargs)[source]

Bases: Module

— Stereotaxic Frame posHelper Module — Armatures objects can be found in armatures_objects attribute.

AVAILABLE_ARMATURES = ['Armature', 'TrimeshScriptArmature', 'STLMeshArmature', 'STLMeshBooleanArmature', 'STLMeshConvexHull', 'KwaveAShomogeneousSimulationArmature', 'KWave3dSimulationArmature', 'KWaveAS3dSimulationArmature']

List of Armature Classes available for use

property armatures_objects

Returns armatures objects loaded in the stereotaxic module

add_armature(new_armature_class, new_armature_display_name)[source]

Call to add an Armature of type new_armature_class to the StereataxicFrame module (provide the class name as a string). The list of available armature types can be obtained in AVAILABLE_ARMATURES. Please provide an armature name in new_armature_display_name.

delete_armature(armature_name)[source]

Call to delete ‘armature_name’ from the StereataxicFrame module.

release_tooltip()[source]

Releases the tooltip location from the selected location in the module. Please call CoperniFUS viewer release_from_modules method to release the tooltip from all loaded modules.

update_tooltip_on_armature()[source]

Updates the Tooltip location according to the checkbox selection in the Stereotaxic Frame Module dock

get_armature_tree_as_dict()[source]

Returns the stereotaxic frame armatures tree structure as a Python dictionary.

update_armature_inheritance(gl_objects_exist=True, steframe_arch_dict=None)[source]

Updates the armature architecture based on structure defined in the qtree. Providing a steframe_arch_dict overide qtree content

property qtree_selected_armature

Get the name of the armature selected in the qtree

property qtree_selected_armature_object

Get the object handle for the armature selected in the qtree

reset_highlighted_armatures()[source]

Disable highlighting for all loaded armatures

init_dock()[source]

Called on GUI setup to add a module dock

add_rendered_object()[source]

Called when populating the viewer with the module rendered objects

update_rendered_object()[source]

Called on render view updates

delete_rendered_object()[source]

Called on deletion of the module rendered objects