Anatomist programming elements

Global and static variables

This is just a subset of some useful variables

Anatomist

singleton class for global state variables

theAnatomist

access to the singleton

Processor

singleton class for commands processor

theProcessor

access to the singleton

Registry

singleton class: list of commands readers and syntax; commands factory

Registry::instance()

access to the singleton

FusionFactory

singleton clas for objects fusion methods; makes a new object from several input ones; tells if it is possible to make a fusion

FusionFactory::instance()

access to the singleton

ObjectReader

singleton class for objects reading; objects factory

ObjectReader::read()

access to the singleton

Configuration options

Anatomist can be customized in a personal options file. This file is located in the .anatomist/config directory of your account and is named settings.cfg (${HOME}/.anatomist/config/settings.cfg on unix).

The configuration file holds the settings selected from the Preferences menu of Anatomist, and may contain additional, “hidden” options which are not (or not yet) accessible via the user interface. It is basicly a list of options with values and the file can have two distinct formats at the moment.

  • The “Tree” format variant (older) looks like the following:

*BEGIN TREE anatomist_settings
anatomist_version   1.30alpha
enableUnstable      1
html_browser        konqueror %1 &
*END
  • The “Python” format variant (newer) looks like this:

attributes = {
    '__syntax__' : 'anatomist_settings',
    'anatomist_version' : '1.30alpha',
    'enableUnstable' : 1,
    'html_browser' : 'konqueror %1 &',
  }
  • In the future this file may move to XML format, but this is only the future.

Python format is more flexible than the older “tree” format because it allows unknown tags. This is important because it keeps compatibility with older anatomist versions: at the moment, new options saved in the settings file will prevent older anatomist versions to read the whole file. Inversely, the python format is only supported (and readable) since Anatomist 1.29.

Options value can take simple types: string, int, float, vector of int…

Here is a complete (I hope) list of the possible options:

Option Type Default value Possible values Description Exists since anatomist version
anatomist_version string Higher version used all
axialConvention string radio radio, neuro Display convention for axial and coronal slices 1.30
boxSelectionColorMode string gray gray, as_selection, custom When box selection highlighting is enabled (see boxSelectionHighlight), this parameter determines how boxes colors are set. In custom mode, the custom color is given by the boxSelectionCustomColor parameter. 4.2
boxSelectionCustomColor float_vector [ 0.7, 0.7, 0.7, 1. ] RGB (3 float between 0 and 1), or RGBA When box selection highlighting is enabled (see boxSelectionHighlight), and in custom color mode (see boxSelectionColorMode), this parameter specified the boxes colors. 4.2
boxSelectionIndividual int 0 0, 1 When box selection highlighting is enabled (see boxSelectionHighlight), this parameter specified whether there is one global box (0) or one box for each selected object (1). 4.2
boxSelectionHighlight int 1 0, 1 Enables (1) or disables (0) box selection highlighting. Box selection draws a bow around selected objects in seletion control mode. Several parameters control the way bowes are rendered: see boxSelectionIndividual, boxSelectionColorMode, and boxSelectionCustomColor. 4.2
clipBrowserValues int 0 positive int Maximum number of characters displayed in graph, nomenclatures and other tree attributes in browsers. 0 means unlimited (default). It may be useful to set a limit here because on some Linux X servers and some Qt implementations, displaying too large text may result in anatomist crashing. 4.0.2
commonScannerBasedReferential int 0 0, 1 Assumes all "scanner-based" referentials in image headers are the same. By default they are considered all different. 4.2
confirmBeforeQuit int 1 0, 1 Display or don't display the confirmation box when quittng Anatomist. 4.3
controlWindowLogo int 1 0, 1 Allows to hide the logo image and (take less space) all
cursorColor int_vector None RGB (3 ints) Color of the 3D windows cursor. Only valid if cursorColorAuto is 0 all
cursorColorAuto int 1 0, 1 In auto mode, a default color is taken and cursorColor is not taken into account all
cursorShape string cross cross, circle Shape of the 3D cursor. In Anatomist 1.30, only cross was implemented. In Anatomist 3.0, cursors can be any anatomist object. A number of cursors are available, and users can add their own ones in their .anatomist/cursors directory. all
cursorSize int 20 positive int Size of the 3D cursor (in mm) all
displayCursorPosition int 1 0, 1 Display or not the statusbar in 3D windows with the cursor position and image values 4.1
disableOpenGLSelection int 0 0, 1 Avoid using OpenGL-based selection (in selection control, and 3D windows tooltips). It may be needed with some buggy OpenGL implementations which may cause Anatomist to crash. The "Surface Paint" tool also makes use of it in an unconditional way, so this module might still crash with such an OpenGL implementation. 4.1
displayCursorPosition int 1 0, 1 Display or not the statusbar in 3D windows with the cursor position and image values 4.1
enableUnstable int 0 0, 1 Enable or disable unstable and buggy (dangerous) features 1.30
graphDisplayMode string meshes meshes, voxels, all, first Display mode for 3D objects in graph nodes and relations all (used since 3.0)
graphHierarchyAttribute string name name, label Graph nodes attribute used to link and color with nomenclature names all (used since 3.0)
graphUseHierarchy int 1 0, 1 enable or disable the coloring of graph 3D elements according to a nomenclature hierarchy all (used since 3.0)
graphUseToolTips int 1 0, 1 enable or disable tooltips on 3D views, to display graph nodes labels all (used since 3.0)
html_browser string system dependent command used to run a HTML borwser for the documentation all
language string system default en, fr, ... Translation language in the GUI all
leftRightDisplayed int used only since Anatomist 4.3 all
linkedCursor int 1 0, 1 Display / hide the 3D cursor all
listview_background string None Image file to be displayed in "listview" widgets of the GUI: the control window objects and windows lists, browsers etc. This is only a gadget to customize the look of Anatomist. Filenames without an absolute path are taken in the ${HOME}/.anatomist/icons/ directory all
maxTextureUnitsUsed int -1 >= -1 Limit the number of OpenGL texture units used. The default is -1, unlimited. Try this option if you encounter OpenGL rendering problems. Such problems have been seen on Windows machines, where rendering was not performed at all if more than 3 texture units were enabled (even on non-tetured objects). 4.1
path_list string Paths list to be inserted in the pre-seelcted directories of file dialogs. It can be useful to reach quickly your favorite data directories all
selectionColor int_vector RGB (3 ints) Selection color for graph nodes all
selectionColorInverse int 0 0, 1 If this option is enabled, the selection color is the negative of the original color of the selected object. In this case, selectionColor is not taken into account all
selectionRenderingMode string ColoredSelection ColoredSelection, OutlinedSelection Sets the way selected objects visually appear in 3D renderings. The default, ColoredSelection draws them in a different color (see selectionColor and selectionColorInverse). In OutlinedSelection mode, selected objects don't change color but have a thick outline with the selection color. 3.1.5
useSpmOrigin int 0 0, 1 If enabled, SPM volumes with an origin are automatically assigned a referential and transformation at load time to take it into account. This used to be the default and only possible behaviour in anatomist 1.29 and previous versions, but as it is often annoying, it has been disabled. When disabled, the same referential can be created via an object-specific option of volumes 1.30
volumeInterpolation int 1 0, 1 By default, resampled volumes values are interpolated from neighbouring voxels. This gives a nice smooth aspect but is slower and may not let you see the exact limits of the voxels. all
windowSizeFactor float 1.5 > 0 Default windows size factor. 1.0 corresponds to 1 pixel for 1mm in data space, larger values means larger windows. Depending on the size and resolution of your screen, you may want to change this default value. 3.0 (default changed from 1. to 1.5 in Anatomist 4.1)
windowsUseGraphicsView int 0 on MacOS, 1 on other systems 0, 1 When enabled, use a Qt Graphics View as foreground layer in 3D windows: it allows to draw various things on top of the OpenGL renderings, and will be used for visual feedback during interactions, or to display information. It is used for instance for palette contol feedback. 4.4