OpenCMISS-Argon

The OpenCMISS-Argon is the core data structures for GUI applications using OpenCMISS-Zinc opencmiss.org.

Manages and serializes argon file.

Install

Requirements

python >= 3.6

opencmiss.zinc >= 3.6

pip install

OpenCMISS-Argon can be installed from PyPi.org with the following command:

pip install opencmiss.argon

Usage

This package provides ten modules

  1. argondocument

  2. argonerror

  3. argonlogger

  4. argonmaterials

  5. argonmodelsources

  6. argonregion

  7. argonsceneviewer

  8. argonspectrums

  9. argontessellations

  10. argonviews

These modules are surfaced under the namespace package opencmiss within the argon package. To use these modules the following import statement can be used:

import opencmiss.argon.argondocument
import opencmiss.argon.argonerror
import opencmiss.argon.argonlogger
import opencmiss.argon.argonmaterials
import opencmiss.argon.argonmodelsources
import opencmiss.argon.argonregion
import opencmiss.argon.argonsceneviewer
import opencmiss.argon.argonspectrums
import opencmiss.argon.argontessellations
import opencmiss.argon.argonviews

Classes

ArgonDocument Class

class opencmiss.argon.argondocument.ArgonDocument(name='Argon')
checkVersion(minimum_required)

Check the version number of this Argon library. Raise an error if current Argon is less than the minimun required version.

deserialize(state)

Read the JSON description to the argon document object. This will change the settings of ArgonDocument Object.

Parameters

state – string serialisation of Argon JSON document.

findRegion(name)

Find region by name.

Parameters

name – The name of the region as a string.

Returns

ArgonRegion or None if region is not found.

freeVisualisationContents()

Deletes subobjects of document to help free memory held by Zinc objects earlier.

getMaterials()

Returns the materials in the context.

Returns

ArgonMaterials

getName()

Returns the name of the zinc Context.

Returns

string

getRootRegion()

Returns the root region in the context. A convenience for applications that need only one region tree.

Returns

ArgonRegion

getSpectrums()

Returns the spectrums in the context.

Returns

ArgonSpectrums

getTessellations()

Returns the tessellations in the context.

Returns

ArgonTessellations

getViewManager()

Returns the view manager in the context.

Returns

ArgonViewManager

getZincContext()

Returns the underlying Zinc context for the document.

Returns

opencmiss.zinc.context.Context

initialiseVisualisationContents()

Initialise the default Visualisation Contents.

serialize(basePath=None)

Write the JSON file describing the Argon document in the argon document object, which can be used to store the current argon document settings.

Parameters

basePath – The base path of JSON file, default is None.

Returns

Python JSON object containing the JSON description of argon document object.

ArgonError Class

class opencmiss.argon.argonerror.ArgonError(message)
getMessage()

Returns the error message.

Returns

string

ArgonLogger Class

class opencmiss.argon.argonlogger.ArgonLogger
static closeLogger()

Deletes subobjects of Argon logger to help free memory held by Argon objects earlier.

static getLogger()

Return the Argon Logger.

Returns

ArgonLogger

static loggerCallback(event)

Argon Logger Callback, wirte different type of message based on the input event flags.

Parameters

event – event

static setCallback(callback)

Set Argon Logger callback.

Parameters

callback – Callback function.

static setZincContext(zincContext)

Set the underlying Zinc context for the Argon Logger.

Parameters

zincContext – opencmiss.zinc.context.Context

static writeErrorMessage(string)

Write Argon Logger Error message.

Parameters

string – string

static writeInformationMessage(string)

Write Argon Logger Information message.

Parameters

string – string

static writeWarningMessage(string)

Write Argon Logger Warning message.

Parameters

string – string

ArgonMaterials Class

class opencmiss.argon.argonmaterials.ArgonMaterials(zincContext)

Manages and serializes Zinc Materials.

deserialize(dictInput)

Read the JSON description to the argon Material object. This will change the materials in the material module.

Parameters

dictInput – The string containing JSON description.

getZincContext()

Returns the underlying Zinc context for the Argon Material.

Returns

opencmiss.zinc.context.Context

serialize()

Write the JSON file describing the materials in the Argon Materials object, which can be used to store the current material settings.

Returns

Python JSON object containing the JSON description of Argon Materials object, otherwise 0.

ArgonModelSourceFile Class

class opencmiss.argon.argonmodelsources.ArgonModelSourceFile(fileName=None, dictInput=None)
addToZincStreaminformationRegion(streamInfo)

Add to Zinc Stream information Region.

Parameters

streamInfo – streamInfo

getDisplayName()

Returns the display name of current Argon model sources.

Returns

string

getFileName()

Returns the file name of current Argon model sources.

Returns

string

getRegionName()

Returns the region name of current Argon model sources.

Returns

string

getTime()

Returns the time of current Argon model sources.

Returns

string

getType()

Returns Argon Model Source File type “FILE”.

Returns

string

isEdit()

Returns the edit state of current Argon model sources.

Returns

boolean

isLoaded()

Returns the load state of current Argon model sources.

Returns

boolean

serialize(basePath=None)

Write the JSON file describing the Argon model sources, which can be used to store the current Argon model sources settings.

Parameters

basePath – The base path of JSON file, default is None.

Returns

Python JSON object containing the JSON description of Argon model sources object.

setEdit(edit)

Change edit state for Argon model sources.

Parameters

edit – boolean

setFileName(fileName)

Change file name.

Parameters

fileName – string

setRegionName(region_name)

Change region name.

Parameters

region_name – string

setTime(time)

Change time.

Parameters

time – string

unloaded()

Set Argon model sources unloaded.

ArgonRegion Class

class opencmiss.argon.argonregion.ArgonRegion(name, zincRegion, parent=None)
addFieldTypeToDict(field, fieldType)

Add new field type and field to the field type dictionary in current region.

Parameters
  • field – The field need to be added to current region.

  • fieldType – The field type of the field.

addModelSource(modelSource)

Add model source, applying it if not currently editing

Parameters

modelSource – The model source to add

applyModelSource(modelSource)

Apply model source, loading it or reloading it with all other sources as required

Parameters

modelSource – The model source to apply

clear()

Clear all contents of region. Can be called for root region

connectRegionChange(callableObject)

Request callbacks on region tree changes.

Parameters

callableObject – Callable object taking a NeonRegion argument and a boolean flag which is True if tree structure below region needs to be rebuilt.

createChild()

Create a child region with a default name

Returns

ArgonRegion

deserialize(dictInput)

Read the JSON description to the argon region object. This will change the settings of ArgonRegion Object.

Parameters

state – string serialisation of Argon JSON Region.

freeContents()

Deletes subobjects of region to help free memory held by Zinc objects earlier.

getChild(index)

Returns the child region of current region by given index.

Parameters

index – The index of target region.

Returns

ArgonRegion

getChildCount()

Returns the amoung of child region the current region has.

Returns

int

getDisplayName()

Returns the display name of current region.

Returns

string

getFieldTypeDict()

Returns the dictionary of field type in current region.

Returns

dict

getModelSources()

Get model sources.

Returns

The model source

getName()

Returns the name of current region.

Returns

string

getParent()

Returns the parent Argon region of current region.

Returns

ArgonRegion

getPath()

Returns the path of current region.

Returns

string

getZincRegion()

Returns the underlying Zinc context for the Argon region.

Returns

opencmiss.zinc.context.Context

remove()

Remove self from region tree and destroy; replace with blank region if root

removeChild(childRegion)

Remove child region and destroy.

Parameters

childRegion – ArgonRegion

removeModelSource(modelSource)

Remove model source, reloading model if it removed source had been loaded

Parameters

modelSource – The model source to remove

replaceFieldTypeKey(oldName, newName)

Replace field type name in the field type dictionary in current region.

Parameters
  • oldName – Current field need to be replaced.

  • newName – New name that will be change to.

serialize(basePath=None)

Write the JSON file describing the Argon region, which can be used to store the current argon region settings.

Parameters

basePath – The base path of JSON file, default is None.

Returns

Python JSON object containing the JSON description of argon region object.

setName(name)

Change region name, the name of Root Region can not be changed.

Parameters

name – string

ArgonSceneviewer Class

class opencmiss.argon.argonsceneviewer.ArgonSceneviewer(zinc_context, parent=None)
applyParameters(sceneviewer)

Apply Argon sceneviewer parameters to Zinc sceneviewer.

Parameters

sceneviewer – Zinc scenviewer object.

deserialize(d)

Read the JSON description to the Argon sceneviewer object. This will change the settings of ArgonSceneviewer Object.

Parameters

d – Python JSON object containing the JSON description of Argon sceneviewer object.

get_view_parameters()

Return the view parameters of Argon sceneviewer.

Returns

dictionary

serialize()

Write the JSON file describing the Argon sceneviewer, which can be used to store the current Argon sceneviewer settings.

Returns

Python JSON object containing the JSON description of Argon sceneviewer object.

updateParameters(sceneviewer)

Read parameters from Zinc scenviewer to the Argon sceneviewer object. This will change the settings of ArgonSceneviewer Object.

Parameters

sceneviewer – Zinc scenviewer object.

ArgonSpectrums Class

class opencmiss.argon.argonspectrums.ArgonSpectrums(zincContext)

Manages and serializes Zinc Spectrums within Neon. Generates colour bar glyphs for spectrums, which is automatically done if if not found on loading.

deserialize(dictInput)

Read the JSON description to the Argon spectrum object. This will change the spectrums in the Zinc spectrum module. Raising an ArgonError if Zinc spectrum module read JSON description failed.

Parameters

dictInput – The string containing JSON description

findOrCreateSpectrumGlyphColourBar(spectrum)

Find or create a GlyphColourBar for spectrum in the glyph module. Newly created colour bar is set up for display in the normalised window coordinates at left.

Parameters

spectrum – The spectrum that the colour bar belongs to.

getZincContext()

Return the zinc Context of current argon spectrum.

Returns

opencmiss.zinc.context.Context

removeSpectrumByName(name)

Unmanages spectrum and its colour bar. Note spectrum is only removed if neither are in use.

Returns

True if spectrum and colour bar removed, false if failed i.e. either are in use.

renameSpectrum(spectrum, name)

Renames spectrum and its glyph

Parameters
  • spectrum – The spectrum that need to be renamed.

  • name – New name to the spectrum.

Returns

True on success, otherwise False (means name not set)

serialize()

Write the JSON file describing the spectrums in the argon spectrum object, which can be used to store the current spectrum settings.

Returns

Python JSON object containing the JSON description of argon spectrum object, otherwise 0.

ArgonTessellations Class

class opencmiss.argon.argontessellations.ArgonTessellations(zincContext)

Manages and serializes Zinc Tessellations within Neon.

deserialize(dictInput)

Read the JSON description to the Argon Tessellations object. This will change the tessellation in the Zinc tessellation module. Raising an ArgonError if Zinc tessellation module read JSON description failed.

Parameters

dictInput – The string containing JSON description

getZincContext()

Return the zinc Context of current Argon Tessellations.

Returns

opencmiss.zinc.context.Context

serialize()

Write the JSON file describing the tessellations in the argon tessellation object, which can be used to store the current tessellation settings.

Returns

Python JSON object containing the JSON description of argon tessellation object, otherwise 0.

ArgonView Class

class opencmiss.argon.argonviews.ArgonView(zincContext)

Defines and serializes a single view.

deserialize(d)

Read the JSON description to the Argon View object. This will change settings of ArgonView Object.

Parameters

d – Python JSON object containing the JSON description of Argon view object.

getGridSpecification()

Returns the grid specification of current region.

Returns

string

getName()

Returns the name of current view.

Returns

string

getScenes()

Returns a list of scene in current view.

Returns

list

getZincContext()

Return the zinc Context of current argon view.

Returns

opencmiss.zinc.context.Context

serialize()

Write the JSON file describing the Argon view, which can be used to store the current Argon view settings.

Returns

Python JSON object containing the JSON description of Argon view object.

setName(name)

Set name of current view.

Parameters

name – string

updateSceneviewer(row, col, sceneviewer)

Update sceneviewer at given grid location.

Parameters
  • row – int

  • col – int

  • sceneviewer – ArgonSceneviewer

ArgonViewManager Class

class opencmiss.argon.argonviews.ArgonViewManager(zincContext)

Manages and serializes ArgonViews.

addViewByType(view_type, name=None)

Create a new view with given view layout type, there are two avaiable types: LAYOUT1 for view with single sceneviewer, LAYOUT2x2GRID for view with four sceneviewers.

Parameters
  • view_type – View layout type.

  • name – Name of the new view, default is None. If it is None, will use view type as name.

deserialize(d)

Read the JSON description to the ArgonViewManager object. This will change settings of ArgonViewManager Object.

Parameters

d – Python JSON object containing the JSON description of ArgonViewManager object.

getActiveView()

Returns current active view.

Returns

ArgonView

getView(index)

Get view by index.

Parameters

index – int

getViews()

Get a list of views.

Returns

list

getZincContext()

Returns the underlying Zinc context for the view manager.

Returns

opencmiss.zinc.context.Context

removeView(identifier)

Remove view by given identifier.

Parameters

identifier – The identifier of view.

serialize()

Write the JSON file describing the ArgonViewManager, which can be used to store the current ArgonViewManager settings.

Returns

Python JSON object containing the JSON description of ArgonViewManager object.

setActiveView(view)

Sets current active view.

Parameters

view – ArgonView

setViews(views)

Set views.

Parameters

views – list

updateSceneviewers(view_index, sceneviewers_info)

Update sceneviewer info in the view.

Parameters
  • view_index – The index of view that need to be updated.

  • sceneviewers_info – New sceneviewers info.

viewCount()

Get the total number of views in this ArgonViewManager object.

Returns

int