July 19th, 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.
September 8th, 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.
June 28th, 2011New 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.
· 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.
· 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).
· 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.
· Boost was updated to version 1.43
· SQlite was updated to version 220.127.116.11
· 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)
· 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:
New Parameter Modules:
· 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.
· 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.
· 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.
· 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)
· 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.
· 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
· The ToolRunner supports the setup of additional environment variables for the tools
· 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)
· 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
· 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
· 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
· 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
· Source code files in the RELATEDFILES variable of qmake .pro files are no longer built when targeting Xcode with the MeVisLab Project Generator
· A bug in the OSX Image IO plugin has been fixed that could provoke a crash when reading images with embedded color space information
June 24th, 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)
June 15th, 2009Common 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:
· 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.
New Scripting methods:
Removed Scripting methods:
· MLAB.buildInformationVariable(): use information from MLABPackage
· MLAB.buildInformationVariables(): use information from MLABPackage
· MLABFileManager.getDocsDir(): use MLABPackage.documentationPath()
· MLABFileManager.getExecutableDir(): use MLABFileManager.getExecutable()
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.
· 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.
· 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 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.
· 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.
· 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.
· 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.
· 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.
· Upgrade to VTK version 5.3 from September, 3rd, 2008. For details see technical notes in module help of any wrapped vtk module.
· 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.
· 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.
· The DicomService is now part of the MeVisLab application bundle and does no longer require a separate download.
· 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.
· Expanded and revised users guide MeVisLab Mac OS X Edition.
· New document OsiriX MeVisLab Bridge.
· 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.
· 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.
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
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.
October 1st, 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
· Context sensitive help (F1, ⌘+?).
· MLAB.[macro|ml|inventor]Modules(), MLAB.all[Macro|ML|Inventor]Modules()
· 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 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/).
May 6th, 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
April 4th, 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