MeVisLab Changelog

What's new in MeVisLab 2.7.1

Oct 24, 2015
  • New Features:
  • Added auto-focus feature to MLABGraphicsInventorRenderArea: This item will automatically get the keyboard focus if the mouse moves over it.
  • Added an allowPopups tag to the WebView control. Setting this to yes will allow HTML popup windows to appear (though not with the same feature support as the main control).
  • Added a new pre-defined symbol "clear" for network panel buttons.
  • ADK only: Added variable $MAKE_ALL_OUTPUT_FILES_WRITEABLE to installer wizard. But installers files are made writable in any case now if required (if they are signed or encrypted).
  • The Visual Studio 2013 version of MeVisLab is now built with Visual Studio 2013 Update 5. We suggest you use the same version if you compile your own modules.
  • Fixes:
  • Fixed a bug where MATE would rename directories that have a file ending in their name and appear in the new project workspace. This especially affected Mac users (e.g., MyProject.xcodeproj was renamed to MyProject).
  • Fixed random crashes when reading WEM files.
  • Performance increase for WEM loading and generation (e.g., in WEMIsoGenerator).
  • Fixed that the output of WEMIsoGenerator when generating in background was stretched if the sampling size in z direction was different from the voxel size in z. Also fixed timepoint handling for this case.
  • Also fixed that WEMIsoGenerator could generate NaN values in rare cases.
  • Fixed a crash in modules derived from CSOModificator.
  • Restored removed CSO methods removeFromGroup, addToGroup, and removeFromAllGroups as deprecated methods.
  • Added headers of MLCSOBoostGeometry.
  • SoCSOExtensibleEditor: isCreatingNewCSO field remained TRUE when current contour was deleted.
  • SoCSOCrossSectionRenderer: Support non-orthogonal CSOs created on a MPR.
  • SoCSO3DVis: Avoid to generate 3D objects for seed points that are effectively invisible.
  • Fixed that some Inventor modules like SoBackground were painted a second time if modules like SoAnnotation are in the Inventor scene.
  • Fixed SoPostEffectRenderer on Intel graphics and on OS X.
  • Fixed SoCSOFillingRenderer on OS X.
  • Fixed that SoMouseGrabber caused scene redraws on just turning the mouse wheel.
  • Make sure that the VTKGraphicsItem can always be created in the MLABGraphicsScene.
  • Fixed that some types of controls do not show in a FreeFloat control.
  • Fixed a crash when accessing a ButtonBar control without an associated field from scripting.
  • Fixed that calling setFocus() on a Field control did not work.
  • MLABCommonButtonGroupControl::removeAllButtons() did not correctly remove the buttons.
  • SoTensorFieldVis: Use correct color for ending points in vector rendering mode.
  • Really allow to use an expression to set the button color of a network panel.
  • Avoid a crash on reload of a module whose network panel has been removed.
  • Installation of Pylint code checker failed because of missing functionality.
  • De-highlight connected modules when a parameter connection is de-highlighted in the network view.
  • Do not open internal network if there is no internal network.
  • Fixed a problem with field connection dragging in networks under OS X. Also fix position of network tool tips on Retina displays.
  • Fixed icon display problem in the MATE workspace area under OS X.
  • Links in module documentation that point to another drive under Windows are correctly created now.
  • Python class ItemModelDataSource now also supports items that are derived from QObject.
  • Fixed some crashes in GraphicsViewPresentation example.
  • Fixed a crash in ConcatenateImages if one manages to set numberOfInputs to zero.
  • Fixed font issue on Mac with OS X 10.11 (El Capitan).
  • Fixed ToolRunner required tool check under OS X.
  • Inventor modules SoCone and SoCylinder were not correctly updated if the scaling factors were changed after first rendering.
  • QFileDialog misleadingly allowed to select multiple directories and returned backslashes when selecting an existing directory on Windows Vista and later.
  • Make sure MLABScriptSqlQuery::allValues() starts at the beginning even if MLABSqlQuery::first() was called before.
  • Fixed a crash when two root instances of class XMLTreeNode (defined in project MLParser) were created in parallel. Also fixed a crash in XMLTreeNode::readFromString() on invalid strings.
  • Documentation fixes.
  • Some module panel layout fixes.

New in MeVisLab 2.6.2 (Mar 25, 2015)

  • New Features:
  • Now allows to set JPG quality from RemoteRendering module.
  • ml::BackgroundTask::executeNextMessage() now returns if there was any message to process.
  • ADK: Now supports debug/release and version specific subdirs in package lib directories. Only adds existing directories to PATH.
  • ADK: Added HTML_ESCAPE_IN_VARIABLE command to allow HTML/XML entity escaping.
  • Fixes:
  • Added missing files to the SDK.
  • Changing the texts of a button group control now correctly updates its size.
  • Corrected transformation for WorldStartEndImageAxisAligned mode in SubImage module.
  • Fixed buggy stack image in MPRPath module.
  • Fixed setImageFile method of Image control (didn't work if the newly set image had the same size as the previous image).
  • RemoteRendering and OffscreenRenderer now support FBOs with stencil correctly.
  • Matrix fields now work in remote modules.
  • Fixed a crash when the number of backslashes in DicomTagModify.modifyTagsString was insufficient.
  • DicomModifyTagsPlugin now allows to set private DICOM tag ids in the range 00..0F that were previously forbidden.

New in MeVisLab 2.6.1 (Jul 29, 2014)

  • Added scripting functions MLAB.MEVISLAB_VERSION and MLAB.ML.MLGetVersion.
  • Added scripting method getSeedPointPositionAt to CSO wrapper.
  • The sources for the MLOpenCLKernel1 library are now included in the release.
  • Added source and library files of MLAlgorithmModule to the installer.
  • The splash screen is not shown anymore when MeVisLab or a derived application is installed.
  • Volume rendering in the SoExaminerViewer did not abort early when new input events arrived, which made the rendering of big volume data somewhat unresponsive.
  • Fixed WEMVascularSystem creating 'bumpy' edges or totally missing edges for large images.
  • Fixed that SoView2DAnnotation assumed that a string would not fit in width if (one of) the first lines in a block was empty.
  • Pass on double-click information to an Inventor viewer in the GraphicsView control.
  • Fixed icon drawing with class View2DIcons: The red and blue channels were swapped.
  • Fixed access to preferences variables with ML functions: Only the first access worked, subsequent accesses always returned the same value.
  • Fixed that changing the 'interpolate' field of SoGVRMaskVolume did not update the interpolation immediately.
  • Allow to promote local macro modules to global macro modules with the Macro Module Wizard.
  • Fixed handling of the importPath tag of modules, which led to some small problems with MATE and the debugger.
  • Plugged some memory leaks in ItemModels and CSOs.
  • Pixel Scale Factor for Retina support is now correctly reported from the SoExaminerViewer.
  • Fixed modal session related warnings with dialogs

New in MeVisLab 2.6 (Jul 4, 2014)

  • Fixes / Enhancements:
  • New Features:
  • Support for Visual Studio 2013.
  • You can now drag field connections from and to field buttons in a module's panel.
  • The default ML cache size is now a fourth of the available system RAM if not specified otherwise in the preferences.
  • The min and max tags of a field in a module description may now contain field expressions.
  • The version string displayed on the splash screen of MeVisLab applications can be overridden by setting the variable UserSplashScreenString in the preferences file.
  • Added relatedFiles tag to module description, to manually add files to the "Related Files" section of a module's context menu.
  • Support for the Panel control of modules moved to separate processes. The necessary sub-module fields are now automatically added to the interface of the proxy module.
  • MenuItems now support Python callables in addition to string names for script functions.
  • Introduced a new mechanism for getting third-party library dependencies for application installers.
  • Implemented copy&paste of networks across MeVisLab instances.
  • Parameter connections in networks now use different connection points for inputs and outputs to clarify the direction of the connection.
  • The output field connection that is currently displayed in the Output Inspector is marked with a "halo" in the network.
  • The editable and persistent attributes are now inherited from the internal field when a field is specified with internalName.
  • Local macro modules may be taken from a sub-directory.
  • Various improvements to the TestCaseManager:
  • The TestCenter supports generation of Python coverage data.
  • Support for grouping test cases with the TestCaseSuite tag.
  • Added a recent test cases menu to the "Files" menu of MeVisLab.
  • Added support for progress display, cancellation, and stop-on-error to the TestCaseManager.
  • Test cases are automatically reloaded when the Run button is pressed.
  • Secure testing is not the default anymore.
  • Added keyboard shortcut Ctrl+Alt+T to start the TestCaseManager.
  • The Python library SQLAlchemy was moved to MeVis/ThirdParty.
  • The Threading Building Blocks (TBB) library was added to ThirdParty and may be used in C++ modules by adding CONFIG += tbb.
  • The diagnosis console got a message filter, which can be configured from the context menu.
  • Removed conversion option for old 1.6 user packages from the project wizard.
  • Better support for allowed DICOM string encodings - like certain Chinese encodings - in DicomTree library when loading DICOM files.
  • Added new Qt widget explorer (Extras->Show Widget Explorer), which allows to debug Qt widget trees for CSS styling.
  • When opening Visual Studio from a C++ module's context menu, prefer the version specified with MLAB_COMPILER_VERSION.
  • MATE (Integrated Editor):
  • Removed option to run MATE inside of MeVisLab process, it was not tested anymore and some things have stopped working.
  • When clicking the header in MATE's session view, the documents are sorted.
  • MATE shows field info as tooltip over field names.
  • MATE shows variable values as tooltip when stopped in a debugger breakpoint. The currently selected stack frame is used.
  • Display of variable values improved for Python debugger.
  • MATE can show HTML pages now. This is used in the help generation.
  • C++ API Changes:
  • Support for resolution-independent rendering (See MeVisLab Resolution Independence API documentation).
  • Added templated class TypedEnumField to ML, which allows to store and retrieve enum values without casting.
  • Added class TypedProcessing to ML, which allows to call a templated process() method based on a given ML data type. This is similar to how the TypedHandlers work and can replace the old macro-based mechanisms for instantiating templated methods.
  • Removed the MLSmallImageInterface.
  • New MLUtilities function MLClampIntervalToDataTypeRange to clamp a min/max range against the range of a target data type.
  • Added double precision variants of existing single precision OpenInventor calls and classes, e.g., SbVec3d.
  • Controls:
  • The ItemModelView control gained a visibleOn tag for single columns.
  • Added boldFontAttribute and italicFontAttribute for columns to the ItemModelView control.
  • Added autoExpandAll attribute to ItemModelView control to automatically expand every new item which has children.
  • Renamed doubleClickField to doubleClickedField in ItemModelView control.
  • Radio check boxes in the ListView control can now be styled.
  • Added MDL tag widgetName to controls, to set the objectName of the underlying Qt widget. This can be used in CSS styling.
  • The orientation of the ProgressBar control can be set to vertical.
  • Added scripting method setStepButtonsVisible to NumberEdit control.
  • The EventFilter control provides a 'isKeyRepeat' attribute for key events.
  • The ComboBox control now also supports enum fields.
  • The controls Horizontal and Vertical now support the tags preferredWidth and preferredHeight.
  • Scripting:
  • Added a framework for providing registration information to, e.g., CSO visualization modules. Have a look at the scripting class MLStandardTransformationProviderWrapper.
  • Made SSL support available in standard Python modules.
  • Improved the CSO scripting wrappers.
  • ctx.unexpandFilename prefers the longest, most specific variable match now.
  • Added support for dynamic attributes to Python wrappers; use it by implementing the slot py_dynamic_get_attrib.
  • Added new class PythonItemModel in Python module ItemModelSupport that gets its data directly from a Python object. This is an alternative to the MLStandardItemModelWrapper class.
  • Added OutputInspector for ItemModels.
  • Correctly check for lists and tuples in PythonQt.
  • New scripting method MLABFileManager.isPathInside.
  • New scripting method MLAB.unsetVariable.
  • Added the functions Logging.showDiff() and Base.createHtmlDiff() to the TestSupport package.
  • Added the functions Image.getTrueMinMaxValues(outFieldName) and Image.verifyMinMaxPropertyValues(outFieldName, ...) to the TestSupport package.
  • Added ctx.logError() and ctx.logWarning() scripting methods.
  • MLABMLBaseField and MLABSoNodeField got the scripting method isNull().
  • Fixes:
  • The new multi-threaded ML host got many fixes and performance improvements, and many modules have been changed to make better use of multi-threading. Use of the new multi-threaded ML host is still not the default though and must be activated from the preferences.
  • Improved module dependency analyzer to find more DLLs that should go into an installer and also to cope with encrypted Python files. Also, when scanning networks, local macros of that network are now correctly regarded.
  • Fixed a crash in the eatDicom tool used by DicomImport (only seemed to occur under Windows 8 when compiled with Visual Studio 2012 and later).
  • Worker processes for modules moved to separate processes usually don't inherit file handles anymore.
  • The network scripting window honors the "Stay on top" setting from the "Panels" menu.
  • Several help editor and help generation fixes.
  • Opening files in MATE from the command line works now.
  • The field help tooltip in module panels is also shown for imported panels and fields of internal modules.
  • Fix setting the cursor shape from Inventor viewer in GraphicsView control when input events are marked as handled.
  • Context menu controls now inherit the style from their parent control.
  • Fixes/Enhancements (MeVis/Foundation):
  • New LZ4 compressor available in DataCompressor library and available in MLImageFormat classes (used as default by MLImageFormatFileCache).
  • Added overview help page 'Processing Large Volumes in MeVisLab'.
  • Test coverage of MLImageFormat-Modules and classes improved.
  • MeVisLab-wide improvements of C++11 compliance.
  • Many warnings removed in tool classes and header files.
  • Enhanced experimental compile settings available in .pro files to be enabled before the .pri file includes in .pro files:
  • MLAB_ENABLE_QA_RELEVANT_WARNINGS = 1
If this is not empty, all warnings considered useful for QA relevant code are enabled.
  • MLAB_HANDLE_QA_RELEVANT_WARNINGS_AS_ERRORS = 1
If this not empty, warnings which normally can be removed easily are handled as to errors. Especially in older projects a few warnings still appear in large amounts and cannot be removed without greater effort. These warnings are tolerated although they are not wanted any more.
  • MLAB_HANDLE_ALL_QA_RELEVANT_WARNINGS_AS_ERRORS = 1
This is the preferred setting which switches all warnings to error and guarantees warn-free code. It should be used for new developments and preferably for all projects which can be ported.
  • To be able to handle warnings from included third party files such as STL, boost, etc., the following includes can be used:
  • #include
  • #include
  • #include
  • Fixes / Enhancements (Modules):
  • General:
  • OpenInventor events now get their double-click and auto-repeat flags from the operating system (previously double-clicks were self-detected).
  • Open Inventor Modules:
  • Added module SoView2DOverlayMPR for displaying an non-aligned overlay image on any underlying SoView2D/SoOrthoView2D using a fast software MPR algorithm.
  • The module SoCameraInteraction got buttons to set the camera to the six cardinal directions.
  • The module SoCameraInteraction got key commands for rotating the camera (which must be mapped to actual keys with SoInteractionMapping).
  • The module SoView2DVectorFieldView now also supports 4D vector fields.
  • Added module SoView2DLabel for displaying a text label at a specific world position.
  • SoView2DSliceZoom now has an option to zoom around the clicked position.
  • Added module SoView2DCurrentPixelSpacing to get pixel spacing in current SoView2D.
  • SoVascularSystem got more modes for interactive highlighting.
  • SoLUTEditor did not like image ranges > 16 bit and also got quite slow with large ranges.
  • Added module SoRotateCamera to perform an automatic camera rotation just as in SoExaminerViewer. This can be used with the OffscreenRenderer module.
  • Added module SoDiagram2DPan.
  • SoDiagram2D: opacity of curve area can be changed.
  • SoDiagram2DCursor: can select which axis to show now.
  • Fixed possible render problem when using multiple OffscreenRenderer modules (the OpenGL state was not always correctly set).
  • SoKeyGrabber and SoGenericCommandAction know more key codes now.
  • CSO:
  • Lots of work happened on the SoView2DCSOExtensibleEditor and associated modules.
  • Distance lines can be snapped to certain angles in the SoCSODistanceLineEditor.
  • Fixes to the freehand drawing of SoCSOLiveWireEditor.
  • Added imageSumValue to module SoCSOImageStatistics.
  • Added module SoCSOAnnotationDeviceCoordinates that displays a list of visible CSOs and positions in device coordinates to anchor some widgets in a GraphicsView relative to the visible CSOs.
  • WEM:
  • Added loading of a subset of VRML to WEMLoad.
  • Improved loading of STL in WEMLoad.
  • WEMLoad can now handle empty patches in a .wem file.
  • Interpolation of PVL values made optional in WEMReducePolygons.
  • Added rendering of face normals as mode to SoWEMRendererNormals.
  • WEMIsoSurface was refactored and got a lot faster for large images.
  • WEMSelectPatches and WEMComposePatches were moved to the Standard package.
  • ML modules:
  • MatrixArithmetic computes determinant, trace, and sum of the output matrix now (instead of input matrix A).
  • OtsuThreshold can completely ignore voxels below a threshold value.
  • ConnectedComponents got overhauled.
  • Improved MPRPath and PathToKeyFrame for stretched CPRs.
  • MPR and MPRPath modules were rewritten to support slab projection/rendering.
  • Created an ImageToLUT module which creates a LUT from an image (inverse operation to that provided by LUTToMLImage).
  • ImageSave now saves RGB(A) DICOM images with contiguous color ordering.
  • MergeRegions: computed world box now covers the border voxel region of the reference image entirely.
  • MergeRegions: handles C/T/U dimension info.
  • MergeRegions has an option now to refuse merging of images with non-aligned voxel grids.
  • MergeRegions: fixed output image property computation when region mode is 'use input X'.
  • RegionGrowing: fixed label computation on restore.
  • RegionGrowing: fixed inversion of masked image output.
  • TestPattern now sets a sensible color info on the output image.
  • ImageSave will not refuse to save images with non-fitting color information.
  • Added Overwrite mode to Arithmetic1.
  • Added additional image input to DicomTagModify to copy selected DICOM tags from.
  • DeMosaic: better detects matrix size in some cases and does forward DICOM information now.
  • Added VoxelStartEndOffset mode to SubImage module.
  • Added modules CloneImageAsConstantImage and CloneImageAsTestPattern which can be used to reproduce failing networks without providing the actual image data.
  • Removed field ignoreNextNotify from ML module Bypass.
  • Added module DrawVoxels3D as a successor for Draw3D.
  • Re-factored and modularized DicomQuery for querying DICOM nodes. It should work better and faster now. This uses the new "DicomTools" scripting extension.
  • Resample3D: invalidates output image if useReferenceImage is set and no second image input is provided.
  • The ImageClear module got the updateDone trigger field. This can be used to solve certain update issues in complex image processing networks.
  • ImageHash: added update and autoUpdate fields.
  • Added optional Enter/Leave recording to RemoteRenderingEventRecorder.
  • ConcatenateImages allows up to 8 inputs now (e.g., red/green/blue in c dimension, or several features in u dimension). C/T/U dimension information is also concatenated if present.
  • Added field suppressUpdates to module RemoteRendering. This can help to suppress flickering when the scene changes.
  • The modules Diagram2D and ExtDiagram have been removed and can be replaced with SoDiagram2D (which is available since MeVisLab 2.3).
  • The modules AccumulateImage, DrawPrimitives, Lut, MevisLogo and OrthoMPR have been removed.
  • Module MLImageFormatFileCache:

  • Fixed a rare bug which made region overwrite/update fail with error message.
  • Fixed a potential file leak when switching between enabled and disabled cache file preservation.
  • Uses now LZ4 data compresses as default setting.
  • Provides currently used cache file path in a field.
  • Module ImageCompare: fixed rare comparison bug for voxel value epsilon > 0.
  • New Features:
  • Support for retina display Macs.
  • New artwork with retina resolution.
  • ToolButton controls support the autoRaise tag on OS X as well.
  • Added mevislab-start-release.app to MeVisLab.app/Contents/SharedSupport/Scripts folder.
  • Bug Fixes:
  • Use the correct font on OS X 10.9 (Mavericks).
  • Fixed viewers showing garbage renderings on OS X 10.9 (Mavericks).
  • Prevent MeVisLab from going into App Nap in Worker Mode on OS X 10.9 (Mavericks).
  • Fixed focus issue with some of the IDE dialogs.
  • Fixed keyboard shortcuts issue with module panels in 'stay in front'-mode.
  • File dialogs again respect the given directory.
  • Fixed ADK Application License Manager license detection issue.
  • Fixed embedding of license file in DMG for OS X 10.9 (Mavericks).
  • Notes:
  • To remove the preference for the image processing cache size and to let MeVisLab automatically compute the value, type the following command in the Terminal:
defaults delete de.mevis.MeVisLab GlobalSettings.MLCacheSizeInMB
  • To remove the preference for the amount of texture memory on the graphics card and to let MeVisLab automatically compute the value, type the following command in the Terminal:
defaults delete de.mevis.MeVisLab GlobalSettings.TextureMemoryInMB
  • Modules and Libraries Provided by Fraunhofer MEVIS:
  • ITK and VTK:
  • ITK: upgrade of the ITK ThirdParty library to version 4.6.0 from December 27th, 2013.
  • ITK: upgrade of wrapped ITK modules to new 4.6.0 version.
  • ITK and VTK: the directory structure of generated wrapper projects has been revised. Manually and automatically created projects are separated, all generated help files are in mhelp format now.
  • ITKVTKGenerator creates mhelp files instead of HTML files from now on. Generated wrapper codes use more package compliant directory structure and have less compile warnings, insecurities, and bugs.
  • itkImageFileReader supports automatic ML data type selection for loaded files now.
  • Fixes/Enhancements (FME Modules):
  • SoCSOManualCorrectionEditor: ported the SoCSOManualCorrectionProcessor to work with the SoView2DCSOExtensibleEditor.
  • TensorToEigensystem: ported module to MLAlgorithmModule interface. Old updateMode and applyMode EnumFields have been replaced by a single BoolField "shouldAutoUpdate", manual adaption of existing networks required.
  • InterpolateXMarkerList: added support for markers on different timepoints.
  • FFT:

  • Fixed incorrect handling of reordering of frequencies when calculating the inverse FFT for images with odd number of elements in filtered dimension(s).
  • Introduced namespace FFTTools for tool-functions, renamed 'reorderFrequencies' to 'shiftFrequencies' and added additional tool functions.
  • CLIImporter:

  • generated macro modules will re-use their input images on disk if possible.
  • added more auto-detected default paths (Slicer on Windows, downloaded Slicer extensions).
  • New module CSOShapeBasedInterpolation to linearly interpolate parallel CSOs over slices.
  • VTKPolyDataToWEM: can now convert color information and warns if the input is not of type VTKTriangle.
  • TubularTracking: added an option to specify the start radius.
  • New DICOM related modules, most of them are available as source codes in the FMEwork/ReleaseMeVis package:

  • ApplyDicomPixelModifiers: modifies/filters ML images according to (frame specific) DICOM tags.
  • DicomModifyMultiFileVolumeExport: exports DICOM files and a file list after adapting images and DICOM tags.
  • ModifyDicomTreeAndImage: adding, changing, switching, and modifying DICOM trees appended to images.
  • DicomTreeInfo: shows general DICOM tree information and permits value extraction from tag dumps with (regular) expressions.
  • DicomTreeCompare: for comparing and testing DICOM trees.
  • Experimental modules DicomFIDSave and DicomTreeValidate added.
  • ModifyDicomTreeAndImage and DicomModifyMultiFileVolumeExport: supports DICOM tree, tag, and image (property) modifications.
  • Plugin modules to modify DICOM tags and/or DICOM trees:

  • DicomModifyTagsPlugin
  • DicomModifyImageTagsPlugin
  • New modules displaying contents of radiotherapy objects: RTDoseInfo, RTImageInfo, RTIonPlanInfo, RTIonRecordInfo, RTPlanInfo, RTRecordInfo, and RTStructInfo.
  • New features and changes in modules and wrappers:

  • Many modules (including DirectDicomImport):

  • Tag dump tab has new optional features:

  • Tag annotations.
  • Size control of hex dumps of binary tags.
  • Regular expression filter.
  • 
DirectDicomImport:

  • Added many more tags to default DPL configurations for more reliable sorting and partitioning.
  • Added experimental postprocessor for Siemens overlapping series' SetNGo-Files.
  • Safety-check added to avoid out-of memory situations with very large private tags during import.
  • MinMax-calculation bug on SEG-multi frame bit-image DICOMs fixed.
  • FileListFilterPlugin:

  • Can now also modify Processing Settings of DirectDicomImport for filtered DICOM files.
  • Supports private creator for private tags in Tag Value Filter.
  • DICOM related modules in FME and Python wrappers: many modules provide Base connector(s) for DICOM trees to enable the handling of non-image DICOM information.
  • Source Codes, Wrappers, and Documentation:
  • Ported many module documentations from HTML to mhelp.
  • Added overview help page 'DICOM in MeVisLab' about all DICOM related functionality in MeVisLab.
  • General improvement of test coverage, documentation, and robustness, especially in DICOM functionality against bad DICOM configurations.
  • Source code revision and new tool classes and class hierarchies:

  • Some Python wrappers use size_t or 64 bit typed arguments instead of too small 32 bit types.
  • Functionality from DICOMAccessories has been moved/refactored into other tool libraries.
  • A lot new DICOM functionality added to projects MLDICOMCachedIO, MLDICOMTags, ReleaseTools, FileListTools, MultiFileVolume, DicomAnalysis, DicomModify, DirectDicomImport, MultiFileVoluemListOutputs. Mostly available as public source codes.
  • ReleaseTools project provides a new base class FieldAddOnBase with a number of derived classes. For details see corresponding class documentations.

  • DICOMTagDumpFieldAddOn with derived classes TreeAndVolumeInputFieldAddOn, and StringLineFilterFieldAddOn.
  • DicomModifyFieldAddOnBase and its derived classes in MLDicomModify with derived classes DicomModifyOrdinaryFieldAddOn, DicomModifyOtherTagOperationsFieldAddOn, DicomModifyPrivateAddFieldAddOn, DicomModifyPrivateRemoveFieldAddOn, and DicomModifySequenceFieldAddOn.
  • DicomTagInterfaceBase and twelve derived classes in the project MLDicomModify dedicated to represent macros, IODs, and modules according to DICOM standard definitions, for example DicomPatientModuleTagInterface.

New in MeVisLab 2.5 (Sep 2, 2013)

  • Fixes / Enhancements (MeVisLab):
  • New Features:
  • Improved general multi-threading support for ML modules through a new ML host implementation than can take better advantage of the page-based image processing. This is quite new and we recommend users to stick to the "classic host" (see the preferences panel) for serious work for now, but we would like to hear about your experiences with your networks under the new host.
  • MeVisLab can move module execution to another process (see the context menu of ML and macro modules). This feature has existed since version 2.2, but wasn't generally visible. It has matured since then and might be useful in some scenarios. Use this to e.g. do some work in the background. This has some restrictions that are documented in the MeVisLab reference.
  • Improved network profiling:
  • Time spent in OpenInventor node rendering and event handling is recorded now.
  • When not combining call stacks, the "Functions" tab of the profiling view displays the actual call order. The old tracing feature which relied on manually placed macros in own code has been disabled.
  • Avoid saving geometry changes in .mlab files if nothing has been moved. This reduces differences e.g. for version control systems.
  • MATE (Integrated Editor):
  • New "Watches" and "Evaluate Expression" views in Python debugger.
  • The "Watches" view manages a list of variables and expressions and always shows their values for the current stack frame while debugging (if applicable).
  • The "Evaluate Expression" view can be used to execute code for the current stack frame while debugging.
  • Can open IDE of connected MeVisLabs from MATE. This can be useful to debug (invisible) worker processes.
  • C++ API Changes:
  • mlrange_cast also works for float and double types now.
  • mlTimerCounter.h uses MLint64 instead of double for time values now.
  • Introduced new function Module/Host::processMissingPages which only processes those pages that haven't been processed yet (in contrast to Module/Host::processAllPages, which does it for all pages).
  • SubImage got a new copy constructor that takes an additional translation offset. This can e.g. be used to translate an image in the calculateOutputSubImage method of a module.
  • Introduced new update{Type}Value methods on ML fields that only touch the field if the value changes. Previously one had to implement a comparison him/herself to avoid unnecessary field notifications.
  • Controls:
  • Extended expressions for dependsOn and visibleOn tags. We allow simple numerical expressions and comparisons for these tags now.
  • Pass reference to EventFilter control in command callback of EventFilter control.
  • Own controls can implement MDL tags also through QObject properties, which are automatically accessible from scripting.
  • Some MDL tags of Slider and IntervalSlider controls are also available as QObject properties.
  • The visible tab of a TabView can now be controlled through a field of type integer.
  • Fixed a problem with the RemoteRendering control when displaying the same rendering in several tabs.
  • Scripting:
  • New updateValue methods on fields that only touch the field if the value changes. Previously one had to implement a comparison him/herself to avoid unnecessary field notifications.
  • Added new methods MLAB.setNumberOfImageProcessingThreads and MLAB.getNumberOfImageProcessingThreads to override the default number of threads used for image processing.
  • Fixes:
  • The multi-document interface of MeVisLab and MATE has been replaced by a new implementation. Subsequently it is not possible anymore to have document sub-windows that can be placed and arranged, only one document/network is visible at a time.
  • Streaming output to std::cerr with

New in MeVisLab 2.4 (Sep 2, 2013)

  • Fixes / Enhancements (MeVisLab):
  • New Features:
  • The default handling of fatal errors is to abort in release mode now (just as it is in debug mode).
  • New zoom style zoom-to-mouse-cursor selectable from the preferences panel.
  • The internal network of a macro can be opened with middle click.
  • One can turn off field deprecation warnings in the preferences panel.
  • Network preview in tooltip of workspace tabs.
  • Performance improvements of network rendering.
  • Macro module wizard creates comment tags instead of MDL comments.
  • The ModuleDependencyAnalyzer sorts packages, files, and directories now
  • The ModuleDependencyAnalyzer did not correctly collect local macros
  • MATE (Integrated Editor):
  • Searching whole words works as expected now.
  • Fixed timeout behavior when connected to MeVisLab.
  • C++ API Changes:
  • There is a new persistence interface for Base objects. See documentation in mlAbstractPersistenceStream.h
  • All MLLinearAlgebra matrix classes are derived from a common base class now.
  • Some compiler warnings have been turned into errors in our build system.
  • Controls:
  • ItemModelView can display vectors and matrices.
  • ItemModelView supports comboboxes for editing.
  • The LineEdit control supports inline controls now (for tool buttons like e.g. a 'Reload' button).
  • New DateTime control.
  • Added support for 'fieldDragging' tag to CheckBox and TextView, to allow easy field connections when using these controls.
  • A 'title' tag can be specified for fields.
  • Scripting:
  • Allow to set Python objects on MLBase type fields.
  • Python Booleans are really passed as Booleans to Qt slots now.
  • Fixes:
  • Remember (some) command line arguments when restarting MeVisLab.
  • Always update Inventor node name when instanceName is changed.
  • Library Updates:
  • boost updated to 1.48
  • Python updated to 2.7.3
  • NumPy updated to 1.6.2
  • assimp updated to 3.0 (affects WEMSceneLoader and SoSceneLoader)
  • Fixes / Enhancements (Modules):
  • Open Inventor:
  • SoSFDouble has been moved to the OpenInventor package, field connections to other Inventor field types work now.
  • Open Inventor Modules:
  • The new module SoCreateCubeMapSampler renders an OpenInventor scene to a cube map.
  • SoView2DMarkerEditor got a new overflow mode 'Remove New'.
  • SoView2DAnnotation can show an orientation cube and a center bottom text.
  • SoView2DAnnotation can specify user length/precision for individual tags.
  • SoView2DPlane was improved.
  • SoView2DSliceShift has been renamed to SoView2DSlicePan.
  • SoView2D will perform automatic slice grabbing now, i.e. in mosaic mode mouse interactions will be restricted to the starting slice until all mouse buttons are released again.
  • So3DXMarker got a marker threshold for faster rendering.
  • The SoSampler modules have been refactored.
  • SoView2D and many extensions support an alternative event handling mode called Managed Interaction that avoids clashes of button combinations and allows discovery and re-configuration of key and button combinations in an OpenInventor scene. Set the field useManagedInteraction to use this mode.
  • GVR:
  • Added new module SoGVRForceRenderingInBox to force rendering in a defined box.
  • CSO:
  • The CSO classes emit change events besides the old notification system. This is also accessible from scripting.
  • Added user-data facility to CSOs, based on the new MLVariant library. This is accessible from scripting.
  • New persistence format (version 5) for CSOs, supporting user data.
  • Added new extensible CSO editor framework.
  • Fixed seed point deletion on finishing CSOs in CSOLiveWireProcessor.
  • ML modules:
  • DicomTagModify got an alternative string interface to modify more than six tags at once.
  • SubImage has a center/width mode now.
  • SubImage: Fixed clamping for negative coordinates.
  • IntervalThreshold: optimized output range prediction and much improved GUI panel.
  • Fixed flipping in SwapFlipDimensions. Page size handling is now as one would expect.
  • Assorted fixes and changes on:
  • EuclideanDTF
  • RegionGrowing
  • Macro modules:
  • Changed LUT handling in View2D/View3D.
  • Fixed the DicomQuery module.
  • Modules and Libraries Provided by Fraunhofer MEVIS:
  • Many FME projects have been ported to the new ML interfaces.
  • For many modules, the build system no longer allows warnings.
  • In the ReleaseTools library, new sublibraries, namely ReleaseToolsIO and ReleaseToolsMisc, have been added.
  • DICOM support has been extended by refactoring the PrivateDicomTag decoders and adding new sublibraries (DICOMCachedIOTools) and functions to the DICOMCachedIO and DICOMAccessories libraries.
  • Private tag decoding has been improved and can now decode many private sequence tags, special Toshiba tags and handle unknown private tags.
  • DirectDicomImport:Several bugs have been fixed, including handling of negative slice spacings and the import of temporal series.
  • DirectDicomImport:DICOM REG deformation fields can be imported.
  • DicomSRSave: New module to export DICOM-compliant structured report files.
  • DicomREGSave: New module to export DICOM-compliant registration deformation fields.
  • ColorFromName: New module to determine and assign colors and transparencies from strings via regular expressions.
  • Audio-Waveform playing is no longer support on Linux.
  • Arithmetic and Calculator: Absolute minimum and maximum functions for vector types were added.
  • Arithmetic: A bug in the propagation of the voxel-to-world matrix has been fixed.
  • Calculator: The handling of domain errors can now be configured by the user.

New in MeVisLab 2.3 (Jul 19, 2012)

  • New visualization modules (ambient occlusion, shadow mapping, surface intersection).
  • Open Inventor renovation (VBO rendering, doxygen reference).
  • New GraphicsView GUI control allows to create fluid user interfaces.
  • MATE now offers a GUI editor and supports user scripts.
  • Matplotlib is now fully integrated into MeVisLab.
  • ITK and VTK have been updated to the latest versions.

New in MeVisLab 2.2.1 (Sep 8, 2011)

  • Fixes several bugs that have been reported by our user community since the 2.2 stable release. This release does not add any new features and should be as stable as the 2.2 release.

New in MeVisLab 2.2 (Jun 28, 2011)

  • New Features:
  • Moved to a new internal help file format (.mhelp) for modules which can be edited with the integrated MATE text editor. These are converted on-the-fly to HTML. The old HTML files are deprecated.
  • MATE has been made a separate program which communicates with MeVisLab instances (if available) for auto-completion and other needs.
  • MATE now contains the frontend for a new integrated Python debugger which support breakpoints, stopping on exceptions, call stack and variable introspection.
  • All modules from the MeVisLab/Standard package that still used JavaScript have been ported to Python.
  • MeVisLab does now provide its own Python version (called MeVisPython) for command line use. A separate installation of a Python version is not needed anymore.
  • Profiling has been improved and now contains a call graph view.
  • Implemented some performance optimizations for loading *.mlab files (especially when there are many field connections).
  • Added lazy script evaluation which can be enabled with LazyScripting = true in MeVisLab prefs file (this defers creating the script context until scripting is really used).
  • Added a "Snippets View": fragments from a network can be stored for future usage in a dock in the MeVisLab IDE.
  • Added an option to set module placement style in the IDE.
  • Added a customizable network view mouse interaction.
  • The reloading of selected modules can be triggered by F5/Cmd+Alt+R and has a visual feedback now.
  • Image inputs/outputs can be colored according to state in the network view for diagnostic purposes.
  • Added a preview and navigation feature for internal networks - press Space when no module is selected.
  • Added a context menu entry for modules to check library dependencies (calls DependencyWalker under Windows) for Linux and Mac.
  • MeVisLab can now be installed at paths containing spaces even if Qt is used.
  • The MeVisResearch package group has been renamed and split. The new names are FMEwork and FMEstable. (MeVis Research is now a Fraunhofer institute.) Users usually should not notice this change.
  • Modules can be aligned with optional tool buttons.
  • Added an option to convert a module group to a (local) macro.
  • Added an attribute 'editable' to fields. This attribute sets the default for the 'edit' or 'editable' of controls representing this field. At the same time it sets the 'persistent' attribute if not explicitly given. Non-editable fields are also not editable in the automatic panel.
  • Added a standalone tool for static module dependency analysis (for application deployment with the ADK add-on).
  • Possibility to execute single ML or macro modules asynchronously in a separate process (with some limitations). This is an experimental feature which needs to be unlocked via the prefs file.
Limitations:
  • OpenInventor modules/inputs/outputs do not work (but you can use the RemoteRendering module and the RemoteRendering control to do rendering in a remote module).
  • Image outputs work, but image inputs do not; read images from a file instead.
  • Base inputs and outputs work in principle, but need a Base type handler for the remote communication. Currently there exist only handlers for XMarkerLists and some specialized remote helper types.
  • The panel and scripting of a module will only work in remote modules if it does not violate some encapsulation rules.
  • Remote modules are executed asynchronously, so field updates that previously would happen immediately will happen delayed.
  • C++ API Changes:
  • Various changes to the C++ Field/FieldContainer API: ml::Module is derived from ml::FieldContainer now, and some rarely used or ill defined methods have been removed.
  • Those variants of the FieldContainer::add*() methods that take an external data pointer are renamed to FieldContainer::addDeprecated*(). Using these method versions is (and has been for quite some time) strongly discouraged.
  • The regular FieldContainer::addInt/Float/...() methods now have the initial field value as second argument to avoid an extra setInt/Float/...Value call.
  • Base fields can now be restricted to allowed sub-types of class Base (this is used in MeVisLab to do a type check when connecting Base fields).
  • Base fields now support intrusive reference counting via a new RefCountedBase class (but this is not yet used in any modules).
  • Scripting:
  • Module groups and note items in a module network are scriptable now.
  • MLABModule has a hasWindow call now.
  • Added getFrameSpecificDicomTag and getFrameSpecificDicomTagById to MLABImageField.
  • Added storingToUndoHistoryCommand and restoredFromUndoHistoryCommand commands to MDL - modules are now informed when they are moved to/from the undo buffer.
  • MLABImageField::image().getSliceAsQPixmap() and MLABImageField::image().getSliceAsQImage() allow to get a QPixmap/QImage from RGB and RGBA ML images. These images can then be used on MDL controls (e.g. MLABButtonControl::setPixmap()) or directly on the Qt API.
  • Fixes:
  • Boost was updated to version 1.43
  • SQlite was updated to version 3.7.0.1
  • Crypto++ was updated to version 5.6.1
  • GoogleTest was updated to version 1.5
  • dcmtk was updated to version 3.6.0
  • libpng was updated to version 1.4.3
  • tiff library was updated to version 3.9.4
  • xml2 library was updated to version 2.7.7
  • zlib was updated to version 1.2.5
  • iconv library was updated to version 1.11.1
  • ITK was updated to version 4.0.0 (snapshot 2011-04-01)
  • VTK was updated to version 5.9.0 (snapshot 2011-04-11)
  • Added the following libraries:
  • Eigen 3.0.0 (linear algebra template library)
  • muParser 1.32 (math parser library)
  • OpenCV 2.2 (computer vision library)
  • vigra 1.7.1 (snapshot 2011-02-02) (computer vision template library)
  • Added the following Python extensions:
  • Mako 0.3.4 (template engine)
  • Sphinx 1.0.4 (documentation generator)
  • Jinja2 2.5.2 (templating language)
  • Pygments 1.3.1 (syntax highlighter)
  • docutils 0.7 (documentation utilities)
  • setuptools 0.6c11
  • Fixes/Enhancements (Modules and Controls)
  • GVR:
  • Added temporal position support for secondary volumes.
  • Fixed the rendering of anisotropic GVR volumes (alpha correction and lighting).
  • The GVR Volume Renderer now offers a full featured GPU ray caster and many new modules.
  • Ray Cast Features:
  • Ray casting with empty space skipping and early ray termination.
  • Integration of opaque GL geometry and GL clipping planes.
  • Jittering (Half-step/Random).
  • First hit ray casting.
  • Support for large volumes using bricking/lookup textures.
  • Shader Pipeline Features:
  • SoGVRShaderFunctions work in both slicer and ray caster.
  • Improved coordinate system naming using postfixes.
  • Various new pipeline steps to make the ray caster extensible.
  • New Ray Cast Extensions:
  • SoGVRRayCastSettings
  • SoGVRFirstHitRayCastSettings
  • New Parameter Modules:
  • SoGVRShaderParameterPosition
  • SoGVRShaderParameterDirection
  • SoGVRShaderParameterPlane
  • New Extensions:
  • SoGVRPointLight
  • SoGVRLitSphereShading
  • SoGVRFirstHitAmbientOcclusion
  • SoGVRShaderDiagnosis was rewritten and now offers verbose introspection of the shader pipeline, the used shaders, shader errors/warnings, available state/uniforms and used uniforms.
  • SoGVRPipelineInspector was removed (it was replaced by functionality in SoGVRShaderDiagnosis).
  • GVRShaderFunctionEditor offers a new interface to edit SoGVRShaderFunctions using completion and auto-detection of used uniforms/state.
  • CSO:
  • SoView2DCSOEditor now provides id of the CSO currently under mouse cursor.
  • CSOLiveWireProcessor can use input image directly as weight image.
  • CSOConvertTo3DMask now provides an option to use approximation instead on interpolation which makes the module more robust in some cases. The performance and quality of the algorithm has been improved.
  • Added option to render inner CSOs as holes.
  • More fine-grained control by groups over the display attributes of CSOs.
  • WEM:
  • Added diagnostics for WEM patches in SoWEMDiagnosis.
  • Added standard and root mean square deviation to the WEMInfo module.
  • Modules Provided by Fraunhofer MEVIS:
  • New module CSOManualCorrectionProcessor: allows for an intuitive editing of any CSO in 2D.
  • New module ImageFileCache: allows for a simple caching of standard datatype images with flexible update handling.
  • New module RunScript: simple utility module that allows for storing and executing a Python script in the network without having an explicit Python source file (or inline code in the .script).
  • New module ImageCumulativeSum: calculates the cumulative sum over an image dimension.
  • NotificationCounter: module for analyzing field notifications, now supports differentiation between notifications on valid and on invalid images.
  • BoundingBoxExt module now correctly detects and handles empty boxes.
  • The VideoCapture framework has been extended:
  • Rare crashes while exiting MeVisLab have been fixed.
  • Access to driver-specific functions is provided via base-field access.
  • New SoVideoCaptureSampler2D module that uses a driver-specific function to provide access to the video frame in GLSL code (see SoShader modules).
  • New VideoLoad module to load video files, the supported formats depend on the platform-specific backends used by OpenCV.
  • New SoSimulateMouse module to simulate mouse interaction via scripting or network.
  • New View2DTouch macro that offers additional interaction capabilities using gestures, an image dataset my be explored from the trackpad of modern notebooks or by using an external trackpad like the Apple Magic Trackpad.
  • New modules SoTouchpadDevice, SoView2DTouchControl, SoSwipeAccess.
  • New modules: CurveSelect (selects curves from a CurveList), CurveImport (creates CurveData from ascii text).
  • Other ML Modules:
  • The ConnectedComponent module has been reworked.
  • The MergeRegions module now allows to deactivate auto-update.
  • Added the ImageClear module, which automatically invalidates its output on input image changes - the user has to "manually" pass the input image through. This can reduce notifications.
  • DirectDicomImport:
  • New plugin mechanism available (see DirectDicomImportImportFilterPlugin) for filtering and classifying DICOM files before importing them.
  • New DirectDicomImportIteratorOutput module for iterating over volumes.
  • Radio-Therapy modules are also available on Linux platform now.
  • The eatDicom importer in DirectDicomImport has been removed, which leads to a number of "missing field" messages when reloading network built with older versions. Please resave those networks.
  • Many fixes, especially in voxel size and matrix calculations.
  • Many new features, such as sorting according to DICOM tags, additional import directories, experimental waveform output.
  • Other Open Inventor Modules:
  • New module SoBypass to bypass an Inventor sub-graph.
  • Added mipmap support for 3D samplers.
  • Added a SoCameraViewAll module.
  • Improved external camera handling in the SoExaminerViewer.
  • Other Macro Modules:
  • The Counter module gained the ability to count at regular intervals.
  • New modules StringSplit, StringListSplitter and SwapViewer.
  • LocalImage has been changed to return a new dataset by default that has anisotropic voxel size, is sagittal, has DICOM tags and does not have equal image extents.
  • ModifyRegion refactored to support non-CT world/voxel matrices (e.g. from MRI)
  • Controls:
  • New MDL controls RadioButtonGroup, PushButtonGroup, ToolButtonGroup that shall replace the ButtonBar control.
  • MLABListViewControl::setItemFilter works recursively now.
  • Added a GLSLTextView control with input completion.
  • Updated MLABCheckBoxControl scripting.
  • Added tabDependsOn tag on TabViewItem control.
  • The IntervalSlider honors the "direction" tag now.
  • DicomBrowser is now a dynamically loaded control and supports .mlimage files.
  • New Features:
  • MeVisLab IDE:
  • Spotlight-based search is supported for the MeVisLab IDE and module help
  • To quick-start MeVisLab hold the function (fn) key while double-clicking the MeVisLab icon or a MeVisLab network document
  • A new context menu for the MeVisLab icon in the Dock permits the launch of a new, separate MeVisLab instance
  • The MeVisLab IDE and MATE now provide you with a proxy icon for the current document
  • An AppleScript applet has been added to start MeVisLab in Debug Mode from the Mac OS X Dock. The applet is called mevislab-start-debug.app and is located at: MeVisLab.app/Contents/SharedSupport/Scripts/
  • The Recent Files submenu now limits the maximum number of recent documents according to the user settings. The global setting can be changed in the appearance panel of the system preferences of Mac OS X, but may also be modified on a per-app basis using the NSRecentDocumentsLimit key in the applications preferences, e.g. defaults write de.mevis.MeVisLab NSRecentDocumentsLimit 20
  • The location of application support files has changed: now the application name (CFBundleName) is used to refer to the root directory of settings, screenshot, snippets, etc. In effect, the application support files of the MeVisLab IDE are no longer stored at ~/Library/Application Support/MeVis/MeVisLab/... but at ~/Library/Application Support/MeVisLab/... .
  • Inspection of dynamic library dependencies is supported from the IDE using MacDependency 1.1 or later
  • MeVisLab will perform setup functions upon first startup of a new MeVisLab version for each user
  • Additional icons for .mhelp and .mlgraph document files
  • ToolRunner
  • The ToolRunner supports the setup of additional environment variables for the tools
  • SDK:
  • Important
  • Xcode 3.2 is required for module development. Xcode 4.x is not yet supported at the time of writing due to multiple issues in Xcode 4 itself (version 4.0.2).
  • The xcode-prepare-debug.applescript script that sets up Xcode for MeVisLab module debugging has now been transformed into an AppleScript applet. AppleScript applets can be executed directly without the need to load the ScriptEditor. The xcode-prepare-debug.applescript script is now called xcode-prepare-debug.app. The script is still located at: MeVisLab.app/Contents/SharedSupport/Scripts/
  • The MeVisLab API Documentation is available to Xcode users as 'MeVisLab Toolbox Reference' Doc Set. The Doc Set is located within the MeVisLab bundle at: MeVisLab.app/Contents/Packages/FMEwork/Release/Documentation/Publish/DocSets/
  • The clang compiler is now supported as an alternative compiler (version 2.9 or later). Makefiles may be generated by executing a command line like the following: /Applications/MeVisLab.app/Contents/Support/MeVisLabProjectGenerator.app/Contents/MacOS/MeVisLabProjectGenerator -qopt -spec -qopt /Applications/MeVisLab.app/Contents/Support/MeVisLabProjectGenerator.app/Contents/Resources/mkspecs/macx-clang -no-xcode -no-debug -o Makefile -auto
  • The xcode-prepare-unittest.app AppleScript applet now adds the package environment variables to the unittest executable environment in Xcode facilitating the location of test data
  • The MeVisLab Project Generator evaluates any additional environment variables set via the ToolRunner settings when launched in GUI mode (e.g. when launched via Finder or Xcode)
  • ADK:
  • Package installers that are built using MeVisLab will use the new flat package format of Mac OS X 10.5 and later
  • MeVisLab standalone applications do no longer share their settings
  • Documentation:
  • Updated MeVisLab Mac OS X Edition User's Guide
  • Updated OsiriX MeVisLab Bridge User's Guide
  • MeVisLab supports the generation of Xcode Doc Sets as part of the documentation tools
  • OsiriX MeVisLab Bridge:
  • Series may be sent to multiple targets conveniently via a pop-up selector from the OsiriX toolbar, each OsiriXBridge module represents a target
  • Several series and whole studies can be sent at once if a DirectDicomImport module is used with the OsiriXBridge
  • The OsiriXBridge plugin is controlled exclusively via the toolbar icon in OsiriX
  • Resolved Issues:
  • MeVisLab IDE:
  • The annoying beeps triggered by keyboard events due to a Qt bug (QTBUG-6444) have been fixed by back-porting changes from Qt 4.7
  • MDL:
  • A rare crash in DynamicFrame control caused by Qt (QTBUG-4227) has been fixed
  • The additional margin around the viewer of a viewer control has been removed
  • SDK:
  • Source code files in the RELATEDFILES variable of qmake .pro files are no longer built when targeting Xcode with the MeVisLab Project Generator
  • Modules:
  • A bug in the OSX Image IO plugin has been fixed that could provoke a crash when reading images with embedded color space information

New in MeVisLab 2.1 (Jun 24, 2010)

  • IDE improvements (quicksearch, search in documentation, network rendering, ...)
  • Profiling inspector offers built-in memory and notification profiling within MeVisLab
  • New and improved UI controls (WebView, ListView, style sheet support)
  • NumPy is now bundled with Python distribution of MeVisLab
  • It is now possible to develop ML image processing modules using Python
  • ML Image Processing API was renovated and offers much nicer API
  • New MLBackgroundTasks API offers ML background processing via threads
  • The GVR VolumeRenderer now supports user extensions to its shader pipeline
  • New TestCenter testing framework offers writing functional tests using Python and MeVisLab networks
  • Update to Qt 4.6.2 under LGPL license
  • The whole Qt framework is now scriptable via Python
  • New MDL Control plugin API allows to extend the MDL with custom Qt widgets
  • ITK/VTK updated to latest stable version
  • Various new modules contributed by MMS and FME
  • Mac OS X 64bit version (32-bit version has been discontinued)

New in MeVisLab 2.0 (Jun 15, 2009)

  • Common Enhancements / Fixes (MeVisLab):
  • New MeVisLab package structure:
  • MeVisLab Modules are now managed in Packages.
  • All Tools work on the new package structure.
  • New MeVisLab Tool Runner that facilitates daily developer tasks:
  • Building documentation:
  • doxygen for source code.
  • DocBook for HTML and PDF documentation.
  • Generating project files:
  • .vcproj for Windows compilers (VC8 / VC9).
  • .xcodeproj for Mac OS X Xcode (instead of using the dedicated MeVisLabProjectGenerator).
  • Makefile for Linux gcc compilers.
  • Building of projects:
  • Supports IncrediBuild on Windows platforms.
  • Supports the analysis of project dependencies and the building of multiple projects in the correct order.
  • Revamped network rendering:
  • New module colors (distinguishable for all types of color-blindnesses).
  • Advanced selection highlighting:
  • Selected modules, attached connections and attached modules are visualized.
  • Hold SPACE to let the highlighting appear more articulate.
  • Mouse over highlighting for all network items.
  • Context menu for connections:
  • Display values of parameter connections.
  • Remove single / all connections.
  • Added interactive mini map for a better navigation.
  • Added visual grouping for modules.
  • Added notes for annotating a network.
  • Added placeholders for in/out connectors in internal networks of a macro.
  • Enabled the horizontal moving of connections.
  • Added many short cuts, for example:
  • For opening the automatic panel.
  • For opening the internal network of a macro.
  • For editing the instance name of a module.
  • Print modes for network (simple rendering / black & white rendering).
  • An enhanced way to place instantiated modules on a network did not make it into the release.
  • Enhanced Scripting methods:
  • MLAB.startXxxDrag methods can now take an icon and a hotspot location.
  • MLABFileManager.getExecutable().
  • MLABFileDialog.getExistingDirectory().
  • New Scripting methods:
  • MLAB.allModulesForPackageIdentifier()
  • MLAB.compilerInfo()
  • MLAB.qobjectInherits()
  • MLAB.runCommandDetached()
  • MLAB.showColorDialog()
  • MLAB.stringToEncodedUrlString()
  • MLABField.isConnectedToFieldInSameNetwork()
  • MLABFileManager.getExecutableOnLocalMachine()
  • MLABFileManager.macGetBundleSharedSupportDir()
  • MLABModule.createConnectors()
  • MLABModule.getPackage()
  • MLABModule.isDescendentOf()
  • MLABModule.package()
  • MLABModule.scriptVariable()
  • MLABModule.setScriptVariable()
  • MLABSqlQuery.lastInsertId()
  • MLABTabViewControl.setTabText()
  • MLABTabViewControl.setTabToolTip()
  • MLABTabViewControl.tabText()
  • MLABTabViewControl.tabToolTip()
  • MLABTextViewControl.selectedText()
  • MLABTree.findChildrenRecursive()
  • MLABWindowControl.isMinimized()
  • MLABWindowControl.showMinimized()
  • Removed Scripting methods:
  • MLAB.buildInformationVariable(): use information from MLABPackage
  • MLAB.buildInformationVariables(): use information from MLABPackage
  • MLAB.hasBuildInformationVariable()
  • MLABFileManager.getDocsDir(): use MLABPackage.documentationPath()
  • MLABFileManager.getExecutableDir(): use MLABFileManager.getExecutable()
  • MLABFileManager.getFileInfo()
  • Updated / added documentation:
  • Reviewed the ML Guide.
  • Added an elaborate Getting Started document that covers all first steps from building networks to building own modules in C++.
  • Added a MeVisLab Reference Manual that covers all GUI elements of MeVisLab.
  • Added documentation concerning the new package structure and all new tools.
  • Added support for Postgres and SQLite databases (see the MLABSqlDatabase and MLABSqlQuery scripting classes for general database support).
  • Other changes to the IDE:
  • The Python scripting console can be set to execute default commands on startup. These can be edited in the preferences dialog. Default is "from mevis import *".
  • MeVisLab got a new commandline option "-quick" for faster startup performance when the module database has not changed. Under Windows, look out for the MeVisLab icons with the red arrows on it to start MeVisLab quickly.
  • Common Enhancements / Fixes (Modules):
  • Renamed a number of modules. The old name is left as the 'deprecatedName' to ensure compatibility with old networks. Renamed modules are: CalcGradient, CalcVolume, CatCurves, ConcatImages, ConnectComp, ConstImg, ExtConvolution, ImgLoad, ImgPropConvert, ImgSave, ImgStat, JointHist, JointHistMask, MarkerStat, StdDeviation, Subimage, SubImageStat, VoxValueRescale, SoFrameBufferSampler, SoGVRVolRen, SimpleImgStat. The new names are mostly the non-abbreviated version, e.g. ImgStat becomes ImageStatistics.
  • Added SoShadow* modules group to cast and interact with shadows.
  • ML image file format default file extension has changed from .mif to .mlimage (.mif will still be recognized though).
  • SoTexture2 no longer crashes on Win+VC8. As a side effect it is no longer possible to load SGI Image files (.rgb). Supported are JPEG + GIF. See also SoMLTexture2 for additional image formats.
  • Added event consumption mechanisms for SoView2DExtensions and SoMouseGrabber.
  • SoView2DAnnotation has more display options.
  • Added new module SoViewportRegion to allow rendering into a specified region of the render area and to combine several renderings in one render area.
  • Added MovieCreator module, to allow writing image sequences as movie files.
  • The new SoMovieScripter module allows to rotate OpenInventor scenes automatically. It also offers the linear interpolation of a variety of variables over time.
  • New Arithmetic module for image arithmetic with general mathematical expressions.
  • New Calculator module for general mathematical expressions.
  • New TubularTracking module for tracking tubular structures and vessels.
  • New GaussSmoothing module for fast filtering with a Gaussian filter kernel.
  • New GaussGradient module for calculating the image gradient using a derivative-of-Gaussian approach.
  • New GaussHessian module for calculating the image Hessian using a derivative-of-Gaussian approach.
  • New Vesselness module for calculating a vesselness measure of an image.
  • New ImageWarp module for deforming an image according to a dense vector field.
  • New TensorToEigensystem module for calculating eigenvectors and eigenvalues for a tensor/matrix image.
  • Added DeMosaic module which extracts 4D data sets from fMRI and DTI data e.g. provided by SIEMENS scanners.
  • GVRImageToVolume and GVRVolumeLoad got a parameter "additionalTransformation" to change the world position of GVR volumes.
  • XMarkerLists:
  • New module InterpolateXMarkerList for interpolating new points in an XMarkerList.
  • New module XMarkerShortestPath for finding the shortest path between two points in an XMarkerList.
  • New module SmoothXMarkerList for smoothing the positions in an XMarkerList.
  • New module TravelingSalesman for finding the shortest route visiting all positions in an XMarkerList.
  • New module XMarkerListBounds for finding a bounding box or sphere enclosing all points in an XMarkerList.
  • New module XMarkerSamplePattern for sampling pre-defined point patterns.
  • New module XMarkerListMaxDistance for finding the max distance between points in an XMarkerList.
  • New module MarkerToMask for converting an XMarkerList into an image mask.
  • New module XMarkerListConvert for converting between world and voxel coordinates.
  • Added two new options to SigmaFilter that are disable by default:
  • Use Linear Weighting: If enabled, the kernel voxels in the Sigma Interval are not all weighted equally, but relative to their distance to its center.
  • Local StdDev Max: Specifies whether and against which value the computed local standard deviation is to be clamped prior to the definition of the sigma interval. This can be useful if there is a known maximum of the noise level, but adaptive filtering is still desired in the areas with lower noise.
  • RegionGrowing:
  • Fixed a missing enum string bug that could cause a crash on some platforms. Now all 4D neighborhoods are associated with the correct enum item name.
  • Previously, the DICOM tags RescaleIntercept and RescaleSlope were only read correctly if 'auto update unit type' was enabled. Now this happens always if 'HU' is selected as unit type (no matter if automatically or manually).
  • Previously, the unit type was not auto-updated when 'auto update unit type' was enabled with an already connected input image. This is now fixed.
  • Now the default HU intercept for images with no such DICOM information is 0 instead of -1024.
  • Reduced the number of (unnecessary) output notifications.
  • Output values are no longer clamped to the uint16 range.
  • Fixed some memory leaks introduced by the 4D extension.
  • Fixed boundary overlap computation for 4d images.
  • Improved 64 bit support.
  • MergeRegions:
  • MergeRegions now supports up to 20 in- and outputs (max number can be changed in MergeRegions.h).
  • Explicit region selection adapted, requires re-save of network to remove warnings. Deprecated modes still supported though, should be fully backwards compatible.
  • Inactive in/outputs are hidden in the MeVisLab module representation. Default number of in/outputs now 2.
  • Added some new merge modes.
  • Reduced the amount of inconsistencies in the merge modes, more consistent and better documented fillValue handling.
  • New MacroModule CombineLabels: The CombineLabels module is designed to simplify label image handling by allowing to add objects to an existing label image or combine them to create a new one. In contrast to mere OR operations with specified bitmasks, the module supports the invertible encoding of all pow(2, n) objects that can be represented by an n-bit label image and thus their separate extraction using the ExtractLabels module.
  • New Module ExtractLabels: The ExtractLabels module is designed to simplify label image handling by allowing to extract up to 10 objects identified via a specific (sub)bitmask from a given (integer) label image. In contrast to a mere AND operation with the bitmask, it allows the separate extraction of any of pow(2,n) objects that can be represented by an n-bit label image.
  • CSO:
  • CSOFilter: Implemented the filtering much more efficient.
  • CSOConvertTo3DMask: The starting condition for scanning the surface is more stable now. Also added a debug mode for very large surfaces / huge amount of CSOs.
  • CSOConvertToImage: Fixed an issue with the calculation of the voxel bounding box.
  • CSOBase: Fixed some issues with the computation of the normal and area of a CSO.
  • SoView2DCSOEditor:
  • The display of and the interaction with a CSO can now be limited to CSOs that lie in the current viewer's plane.
  • If a CSO is edited so that it would be not in-plane anymore, it can optionally be auto-leveled.
  • SoCSO3DVis supports now a StylePalette.
  • WEM:
  • New module WEMPVL that generates PVLs for existing WEMs and can be used for testing.
  • Fixed issues with the copying of WEMPVLs; PVL values are also now generated for newly added primitves (i.e. in WEMSubdivide).
  • New module WEMMerge that merges all patches of incoming WEMs into one output WEM.
  • Added methods to automatically close holes in a WEM.
  • New modules SoView2DWEMContour, SoWEMInteract and WEMExtrude: can be used to draw contours on a 3D viewer and to extrude those contours to become a WEM which in turn can be used with the WEMBoolOp to interactively shape surfaces.
  • ITK:
  • Upgrade to ITK version 3.9 from September, 4th, 2008. Some modules wrapping classes from itk review directory have been removed since licensing is not clear or since they were not useful. For details see technical notes in module help of any wrapped itk module.
  • VTK:
  • Upgrade to VTK version 5.3 from September, 3rd, 2008. For details see technical notes in module help of any wrapped vtk module.
  • New Features:
  • MeVisLab IDE:
  • This release has been optimized to run on Mac OS X 10.5 (Leopard) or better. As a result, MeVisLab does no longer run on Mac OS X 10.4 (Tiger).
  • The MeVisLab application bundle now contains a debug and a release mode version of MeVisLab that can be started separately (press the Option key during launch to toggle the version; other methods to choose a version include the Preferences dialog or command line options).
  • An option has been added to the Preferences that allows you to choose an alternative IDE toolkit style (used for cross-platform application development).
  • MeVisLab is now Time Machine aware, log and temporary files are excluded from backup.
  • The Busy Cursor has been replaced by a more descriptive panel using an indeterminated progress indicator + text.
  • Additional document icons for ML Image (.mlimage), GVR (.gvr), and Open Inventor (.iv) files have been included.
  • Image Formats:
  • A new ML Image IO (a.k.a. MFL) plugin has been included that interfaces with the Mac OS X Image IO framework and makes most of the Mac OS X image formats readable by MeVisLab (e.g. ImageLoad). Some of the new formats now supported are: JPEG-2000, Adobe Photoshop, Camera-RAW (Canon, Nikon, ...), GIF, Radiance, Quicktime Images, DNG, PICT, Targa, SGI Image, Windows + Mac Icons, PDF Images. Images may contain multiple layers.
  • DicomService:
  • The DicomService is now part of the MeVisLab application bundle and does no longer require a separate download.
  • SDK:
  • The MeVisLabProjectGenerator (a.k.a. MacProfileTranslator) has been completely rewritten and may now be used in GUI mode (default) or from the command line (see '.../MeVisLab.app/Contents/Support/MeVisLabProjectGenerator.app/Contents/MacOS/MeVisLabProjectGenerator --help' for available options).
  • Support for the RELATEDFILES project variable (.pro files) has been added. It allows you to add related files (e.g. .def or .html files) to a 'Related Files' group in the 'Groups & Files' list of your Xcode workspace window for quick access.
  • Documentation:
  • Expanded and revised users guide MeVisLab Mac OS X Edition.
  • New document OsiriX MeVisLab Bridge.
  • Modules:
  • New ML module VideoCapture, that uses Core Video to provide live video input for all video devices supported by Mac OS X - try your iSight.
  • Updated OsiriX MeVisLab Bridge that supports and requires OsiriX 3.3 or later.
  • MeVisLab IDE:
  • The hidden panel issue has been fixed (module panels did not show up sometimes).
  • The styles font size mismatch between Mac OS X and Windows version has been resolved (now the same font size given in point results in approximately the same pixel size on Mac OS X and Windows).
  • The automatic calculation of available texture memory for newer graphics cards has been improved.
  • Important:
  • Some of the MeVisLab helper tools have changed their name and/or id. Sometimes the Mac OS X application database (a.k.a. launch services database) does not detect the changes as soon as you would like. To be on the safe side, execute the following command in the Terminal to rebuild the application database after you've installed MeVisLab:
  • /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
  • Notes:
  • Leave the available texture memory setting in the MeVisLab preferences untouched for the new MacBook Pro with NVIDIA 9400&9600 chipset (5th generation), MeVisLab will automatically calculate the exact amount of texture memory for the currently active graphic chip (according to the energy settings). You may remove any manual overwriting of the texture memory setting by executing the following command in the Terminal:
  • defaults delete de.mevis.MeVisLab GlobalSettings.TextureMemoryInMB.

New in MeVisLab 1.6.1 (Oct 1, 2008)

  • New welcome screen for MeVisLab.
  • Automatic detection of usable screen space.
  • New integrated TextEditor (called MATE) with syntax highlighting, indention, completion and a context sensitive help (F1, ⌘+?).
  • Note: Currently, MATE uses latin-1 encoding for text files on all platforms
  • Advanced JavaScript and Python completion.
  • Context sensitive help (F1, ⌘+?).
  • MLAB.showInformation()
  • MLAB.showWarning()
  • MLAB.showCritical()
  • MLAB.showQuestion()
  • MLAB.computerModelInfo()
  • MLAB.[macro|ml|inventor]Modules(), MLAB.all[Macro|ML|Inventor]Modules()
  • MLABFileManager.moveFileToTrash()
  • Fixed writing of bad .pyc files when .py files have a syntax error.
  • Fixed auto-reloading of modules when a python file was changed after it had a syntax error.
  • Python errors are now printed with the courier font so allow locating the ^ marker in syntax errors.
  • If a MDL command is connected to a Python function/method, the Python function may now have less arguments than the command provides. Surplus arguments are ignored.
  • TextView now supports showLineNumbers = BOOL and syntaxHighlighing = (Python|QSA|MDL|GLSL).
  • LineEdit: new command lostFocusCommand.
  • Module wizard for ML modules improved with many new features and tooltips with references into detail documentation of ML Guide.
  • Now the Toolbox Reference uses improved doxygen layout, many classes and files have better, fixed or completed documentation and alphabetical class index.
  • WEM library reworked: a WEM is now actually a list of WEMPatches of different type (WEMTrianglePatch, WEMQuadPatch or WEMPolygonPatch).
  • Split the WEM library into a core part and into a modules part (MLWEM and MLWEMModules).
  • Removed: WEMBrowser, WEMClip, WEMMerge
  • Renamed: WEMCollapseEdges -> WEMReducePolygons
  • Renamed: WEMSplitEdges -> WEMSubdivide
  • Renamed: WEMPurge -> WEMDemergePatches
  • Use WEMInfo instead of the removed WEMBoundingBox
  • Use BaseSwitch instead of the removed WEMSwitch
  • Split the CSO library into a core part and into a modules part (MLCSO and MLCSOModules).
  • Reworked CSOConvertToImage: this module works now with a page-based concept and has a OnDemand mode.
  • New processors: CSOModifyProcessor and CSOBulgeProcessor, both to modify existing CSOs.
  • New processor: CSOLiveWireProcessor for a semi-automatic segmentation.
  • SoView2DCSOEditor displays closed and fully visible CSOs in a filled manner.
  • CSOIsoGenerator offers several filtering and smoothing options.
  • SoGVRVolRen no longer supports legacy hardware LUTs (using EXT_paletted_texture) , which was last seen on NVidia GeForce3 cards (but rendering still works on these cards).
  • SoGVRSecondaryLUT and SoGVRSecondaryVolume support a variable number of LUTs and additional octree volumes in the renderer.
  • SoGVRTransformedVolume and SoGVRTransformedVolumeSettings allow so set additional volumes as 3D textures.
  • SoGVRShaderDiagnosis allows to view the shaders which the GVR generates.
  • SoShader: fixes and new modules
  • Shader modules now have GLSL syntax highlighting.
  • Added SoMLSampler1D and SoMLSamplerCubeMap.
  • AccumulateImage: Accumulates images (MPRs) in one image.
  • PointCloudToMask: Converts a list of pairs of points and normals (surface) to a smoothed distance image or a 3D mask.
  • TextureFilter: Applies statistic texture filters to an image.
  • MarkerStat: Computes statistical information on a marker list.
  • DtfSkeletonization: 3D distance transformation by homotopic thinning, skeletonization (replaces module Skeletonization).
  • SoCameraAnimation: Rotates a camera around an Inventor scene in a smooth pan.
  • SoMLLUTChangeColor: Modifies output of SoMLLUT modules.
  • SoMLSampler1D, SoMLSamplerCubeMap: similar to SoMLSampler2D and SoMLSampler3D.
  • BaseBypass: Like the Bypass module just for Base inputs.
  • OSType: Provides basic operating system information.
  • SoBoundingBoxVis: Computes and visualizes an axis aligned bounding box for an arbitrary OpenInventor scene.
  • SoVascularSystem: visualizes vascular systems (vessel graphs) generated by DtfSkeletonization.
  • ColorModelConvert: Now supports color models LAB and XYZ.
  • CoreControl: Has been extended.
  • DistFromXMarkerList: Added calculation of maximum distance.
  • EuclideanDTF: Has been re-implemented.
  • FuzzyCluster: Has been re-worked.
  • HistogramParameters: Calculates a second user defined quantile.
  • ImgLoad: automatic load can be suppressed.
  • ImgPropConvert: Voxel Size and World Matrix are now kept consistent even with no input image connected.
  • Fixed a bug that could cause a 1-voxel translation of output regions created as intersections or unions of input images for non-diagonal world matrices.
  • Fixed a potential problem in output world matrix creation for merging regions in color images.
  • Improved UI.
  • MPR, MPRPath: Got new visualization parameters.
  • Reformat: Added a field for the Euler angles.
  • RegionGrowing: Added 4D capabilities.
  • Sobel3D: Fields have been renamed.
  • StringUtils: New mode ToASCII added for conversion of character values to ASCII numbers.
  • Switch: Now up to 25 inputs are available.
  • So3DXMarker: Has two drawing modes now: fast or correct.
  • SoDepthPeelRenderer: Has been reworked and should produce better results.
  • All help files and example networks have been reworked.
  • SoView2D: Added field "sliceZoomSynchronized" which updates the slice-origin when zooming. This allows to keep the viewing center in the middle of the view when updating the sliceZoom via a field synchronization.
  • SoView2D: Added field "updateInventorEvent". If this is set to "true", the following inventor nodes will not react to events that have been handled by a SoView2DExtensions.
  • SoView2D: New field "plane" contains the plane of the current slice.
  • SoView2DAnnotation: Some fields introduced to get a reliable automatic font sizing.
  • SoView2DMarkerEditor: Added option "snapToSlice" to translate any moved marker to the current slice.
  • BoolInt: Also returns inverted bool value.
  • DicomTool: Can take name template for file names.
  • MarkerListInspector: Lots of new options.
  • MeVisLab changes:
  • MeVisLab does no longer run on PowerPC-based Macintosh computers. This release has been optimized to run on Macintosh computers with an Intel processor.
  • Added Mac OS X 10.5 (Leopard) compatibility; MeVisLab 1.6 runs on Mac OS X 10.4.11 or 10.5.x
  • Added 'Restart With Current Networks' feature (File menu).
  • Improved handling of non-latin1 language settings.
  • Added multiple instances support, now more than one MeVisLab application can be used at the same time.
  • Added command-line support ('cmdline' license feature required).
  • Added Mac OS X Spotlight metadata importer (MeVisLabDocuments.mdimporter) that allows indexing of uncrypted MeVisLab script (.script) and definition files (.def).
  • Added Mac OS X Quick Look generator (MeVisLabDocuments.qlgenerator) for MeVisLab network files (.mlab) that enables previewing of MeVisLab networks. It requires networks to be saved by MeVisLab running on Mac OS X 10.5 (the preview gets added to the resource fork of the MeVisLab network file, thus does not affect loading and parsing of the network).
  • Added Mac OS X Quick Look support for MeVisLab script (.script) and definition files (.def) via standard Quick Look generators for text on Mac OS X 10.5.
  • Adapted shortcuts to be more consistent on Mac OS X.
  • Autodetect amount of video RAM on the graphics card (used by the volume renderer and other GPU-intensive tasks).
  • PowerPC sections removed
  • Spotlight importer plugin added
  • Quick Look integration added
  • Setup of User Projects Location added
  • Using the Module Wizards added
  • Creating an Xcode project from a .pro file updated
  • Debugging MeVisLab modules with Xcode added
  • Developing on Leopard for Tiger added
  • Obtaining Source Codes of MeVisLab Modules added
  • Integrating MeVisLab with OsiriX added
  • Added Mac OS X 10.5 compatibility. There are separate installers for Mac OS X 10.4 (Tiger) and Mac
  • OS X 10.5 (Leopard). Please choose the appropriate installer for your Mac OS X version.
  • Added an experimental bridge between MeVisLab and OsiriX 3.0 (Advanced Mac OS X PACS Viewer) consisting of the OsiriXMeVisLabBridge plugin for OsiriX 3.0 and the MeVisLab module OsiriXBridge. This bridge enables OsiriX to send datasets directly to the MeVisLab imaging pipeline using a standard ImgLoad module (see the example network of the OsiriXBridge module). After processing the dataset, MeVisLab may send the modified data back to OsiriX. The plugin and the module require Mac OS X 10.5 (Leopard). The source codes of both the plugin and the module are included in the MeVisLab public sources package
  • Added check for user interaction in volume renderer (GVR); rendering large volumes should be more responsive now.
  • Added MLAB.macIsApplicationRunning(bundleId)
  • Added MacOSSupport SDK that wraps Mac OS X specific functionality in C++ classes. See the MeVisLab Toolbox Reference.
  • Added AppleScript xcode-prepare-debug.applescript to automatically setup an MeVisLab module Xcode project for debugging (located within the MeVisLab.app bundle in /Contents/SharedSupport/Scripts/).

New in MeVisLab 1.6 (May 6, 2008)

  • New Welcome Screen with demo networks and links to documentation
  • Integrated TextEditor with syntax highlighting, indention, completion and a context sensitive help
  • Improved Scripting Console
  • Volume Rendering now supports up to 4 additional volumes
  • WingedEdgeMesh (WEM) library has been redesigned and improved
  • Many new and improved modules

New in MeVisLab 1.6 RC (Apr 4, 2008)

  • New Welcome Screen with demo networks and links to documentation
  • Integrated TextEditor with syntax highlighting, indention, completion and a context sensitive help
  • Improved Scripting Console
  • Volume Rendering now supports up to 4 additional volumes
  • WingedEdgeMesh (WEM) library has been redesigned and improved
  • Many new and improved modules