# Slicer 4.10.1: Summary, Highlights and Changelog

**URL:** <https://discourse.slicer.org/t/slicer-4-10-1-summary-highlights-and-changelog/5452>\
**Category:** Release Notes\
**Created:** [January 22, 2019, 6:05pm UTC](https://discourse.slicer.org/t/slicer-4-10-1-summary-highlights-and-changelog/5452 "2019-01-22T18:05:50Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [January 22, 2019, 6:05pm UTC](https://discourse.slicer.org/t/slicer-4-10-1-summary-highlights-and-changelog/5452/1 "2019-01-22T18:05:50Z")

</div>

# Table of Contents

- [Summary](#heading--summary)
- [Highlights](#heading--highlights)
- [Detailed Changelog](https://discourse.slicer.org/t/slicer-4-10-1-summary-highlights-and-changelog/5452/2)

# Summary

The community of 3D Slicer developers is proud to announce that version 4.10.1 is[now available for download](http://download.slicer.org/). This patch release introduces ~150 feature enhancements and bug fixes for better performance and stability. It includes a new extension as well as more than 10 improved core modules.

To learn about the ~500 feature enhancements and bug fixes already introduced in version 4.10, consider reading the previous post, “[Slicer 4.10: Summary, Highlights and Changelog](https://discourse.slicer.org/t/slicer-4-10-summary-highlights-and-changelog/4610)”.

The development of 3D Slicer—including its numerous modules, extensions, datasets, pull requests, patches, issues reports, suggestions—is made possible by users, developers, contributors and commercial partners around the world. This development is funded by various grants and agencies. For more details, please see the 3D Slicer[Acknowledgments](https://www.slicer.org/wiki/Documentation/4.x/Acknowledgments) page.

[slicer.org](https://www.slicer.org/) is the portal to the application, training materials, and the development community.

The[Slicer Training](https://www.slicer.org/wiki/Documentation/4.10/Training) page provides a series of tutorials and data sets for training in the use of Slicer.

_Please note that Slicer continues to be a research package and is not intended for clinical use. Testing of functionality is an ongoing activity with high priority, however, some features of Slicer are not fully tested._

# Highlights

## Data module improvements

Many improvements and fixes have been implemented in [Data](https://www.slicer.org/wiki/Documentation/Nightly/Modules/Data) and related modules. More specifically, the following were added:

- a jump slices option to the segment visibility menu in the Data module.

- the ability to toggle visibility for multi-select in the Data module.

- a color column in subject hierarchy.

Additional improvements include these:

- a visibility context menu action called ‘Apply color to branch’ allows overriding the color of the model nodes in the folder.

- a folder can override branch color. This is an important step towards making subject hierarchy usable as model hierarchy.

- an Improved transform column in subject hierarchy.

## Segmentation improvements

Many improvements and fixes have also been implemented in [Segment Editor](https://slicer.readthedocs.io/en/latest/user_guide/module_segmenteditor.html) and related modules. They result in the following:

- allow you to use a [mask with grow from seeds effect](https://discourse.slicer.org/t/new-segment-editor-feature-masking-in-grow-from-seeds-effect/4978).

- make segmentation geometry update more robust.

- improve automatic oversampling calculation.

- allow segmentation without the selection of a master volume.

- add a “Show 3D” option for segmentation auto-complete results preview.

## Built-in web browser improvements

- the improved qSlicerWebWidget allow you to directly load data from standard web sites, which may have logins and custom download forms. This functionality is being used as a building block for the new [SlicerMorph](https://slicermorph.github.io/) project to build improved analysis tools for biological specimens. A demo of the functionality is available [here](https://www.youtube.com/watch?v=t8Dj3rOmt78&feature=youtu.be). Improvements also enable the evaluation of web-page JavaScript code from C++ or Python, or the evaluation of Slicer Python from the page’s JavaScript as shown in [the WebEngine test code](https://github.com/Slicer/Slicer/blob/master/Applications/SlicerApp/Testing/Python/WebEngine.py#L142-L225).

## Compressed video support

- a new infrastructure has been added for the management of compressed video frames. Extensions can implement and register their own video compression codecs for decoding and encoding frames. The [SlicerIGSIO](https://github.com/IGSIO/SlicerIGSIO)extension provides an example of codec registration with VP9, as well as support for both compressed video recording/replay and MKV loading/saving.

---

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [January 22, 2019, 6:05pm UTC](https://discourse.slicer.org/t/slicer-4-10-1-summary-highlights-and-changelog/5452/2 "2019-01-22T18:05:50Z")

</div>

# Changelog

- [Core](#heading--core)
  - [Fixes](#heading--fixes)
  - [Features](#heading--features)
  - [DICOM](#heading--dicom)
  - [MRML](#heading--mrml)
  - [IO](#heading--io)
  - [Python Scripting](#heading--python-scripting)
  - [Testing](#heading--testing)
  - [Extension development](#heading--extension-development)

- [Improved Modules](#heading--improved-modules)
  - [Colors](#heading--colors)
  - [Data / Subject Hierarchy](#heading--data--subject-hierarchy)
  - [LandmarkRegistration](#heading--landmarkregistration)
  - [Markups](#heading--markups)
  - [MultiVolumeImporter](#heading--multivolumeimporter)
  - [ScreenCapture](#heading--screencapture)
  - [Segment Editor](#heading--segment-editor)
  - [Segmentation](#heading--segmentation)
  - [SegmentStatistics](#heading--segmentstatistics)
  - [Terminologies](#heading--terminologies)
  - [VectorToScalarVolume](#heading--vectortoscalarvolume)
  - [Volume Rendering](#heading--volume-rendering)
  - [Editor (deprecated)](#heading--editor-deprecated)

- [Infrastructure](#heading--infrastructure)
  - [Dependencies](#heading--dependencies)
    - [VTK](#heading--vtk)
    - [ITK](#heading--itk)

  - [Custom Slicer application support](#heading--custom-slicer-application-support)
    - [Slicer Application](#heading--slicer-application)
    - [Build-System](#heading--build-system)

- [Extensions](#heading--extensions)
  - [New](#heading--new)
  - [Improved](#heading--improved)

## Core

### Fixes

- Fix 3D picking in displayable managers. [[Commit](http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=27517)].

- Update crosshair RAS position when slice is moved. Crosshair RAS position was only updated from XYZ when mouse position was updated. This caused DataProbe to show outdated RAS position when slice position was updated without moving the mouse pointer (using mouse wheel or keyboard shortcuts).

- Change default colormap for model scalars and transforms to Viridis. Viridis provides continuous transition, so there are no specific iso-values that are displayed more prominently. Due to this, viridis seems to be a more generic colormap, which seems more suitable as a default colormap than rainbow. [[PR](https://github.com/Slicer/Slicer/pull/989)]

- Set associated node for fiducial on volume. The associated node ID for for a markup fiducial was being set when selecting a model, but not when selecting a volume. [[Discussion](https://discourse.slicer.org/t/vtkmrmlmodeldisplayablemanager-issue/4709/2)]

- Ensure mouse mode icon is always visible when placing annotations.

- Ensure slice interactor style “OnMouseWheelBackward” respect Zoom action.

- Re-factor DataProbe, CompareVolumes,LandmarkRegistration to use ScriptedLoadableModule base classes.

- Improve error reporting in vtkOpenGLShaderComputation. This helps for debugging framebuffer attachment issues.

- Reduce minimum size of module settings panel. On some computers, module settings panel was too tall and the “Reset” button was not visible after adding an additional module path and restart hint appeared.

### Features

- Improve qSlicerWebWidget [[PR](https://github.com/Slicer/Slicer/pull/1071)]

### DICOM

- Fixes

- Features

### MRML

- Fixes

- Features

### IO

- Allow loading .obj file as segmentation.

- Track file compression by node, add compression options to save dialog. [[PR](https://github.com/Slicer/Slicer/pull/1035), [PR](https://github.com/Slicer/Slicer/pull/1038), [Discussion](https://discourse.slicer.org/t/how-to-unset-default-compress-option-during-save/4488/18)]

- New infrastructure has been added for the management of compressed video frames. Extensions can implement and register their own video compression codecs for decoding and encoding frames. The [SlicerIGSIO](https://github.com/IGSIO/SlicerIGSIO)extension provides an example of codec registration with VP9, as well as support for both compressed video recording/replay and MKV loading/saving. [[PR](https://github.com/Slicer/Slicer/pull/1028)]

- Fix FreeSurfer surface reader.

### Python Scripting

- Add methods to access view controllers in plot and table widgets.

- Make view controller widget components more accessible. Add Python wrapping and exposed a few buttons of slice and view controller widgets. This allows fine-tuning appearance of view controllers in custom applications.

### Testing

- Relocation of test data and binary dependencies to GitHub

- Improvements to the SampleData module and test data infrastructure .[[Discussion](https://discourse.slicer.org/t/improving-testing-data-management-for-self-test/5014)]

- Improve test run speed [[PR](https://github.com/Slicer/Slicer/pull/1053)]

- Re-factor scripted module tests to use ScriptedLoadableModule base classes.

### Extension development

- Fixes

- Features

## Improved Modules

### Colors

- Fixes

### Data / Subject Hierarchy

- Fixes:

- Features:

### LandmarkRegistration

- Fixes

### Markups

- Fixes

### MultiVolumeImporter

- Fixes

### ScreenCapture

- Fixes

- Features

### Segment Editor

- Fixes:

- Features:

### Segmentation

- Features:

- Fixes:

### SegmentStatistics

- Fixes

### Terminologies

- Fixes

- Features

### VectorToScalarVolume

- Fixes

### Volume Rendering

- Fixes

### Editor (deprecated)

- Fixes

## Infrastructure

### Dependencies

#### VTK

- Update to support python wrapping of VTKRenderingOpenVR.

- Backport to Slicer/VTK fork selected fixes. See [here](http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=27574) for more details.

#### ITK

- Future proofing for transition to ITK5 and C++11.

### Custom Slicer application support

#### Slicer Application

- Make custom application version more accessible.

- Scripted modules in custom applications can easily access application version and repository information using new methods in qSlicerCoreApplication.

- Both Slicer core and custom application version is logged.

- For custom applications, now the main application’s repository revision is displayed in “About dialog” (and not Slicer core’s revision).

#### Build-System

- Fixes

- Features

## Extensions

The Slicer[extensions manager](https://www.slicer.org/wiki/Documentation/Nightly/SlicerApplication/ExtensionsManager) enables Slicer users to install more than 100 extensions written and contributed by their peers from around the world.

### New

- [GeodesicSlicer](https://www.slicer.org/wiki/Documentation/4.10/Modules/GeodesicSlicer): This extension calculates geodesic path in 3D structure. Moreover, thanks to this geodesic path, this module can draw an EEG 10-20 system, determine the projected scalp stimulation site (MRI guided brain stimulation without the use of a neuronavigation System) and correct the rTMS resting motor threshold by correction factor. See [Announcement](https://discourse.slicer.org/t/new-extension-release-geodesicslicer/5405).

### Improved

- [SlicerVirtualReality](https://github.com/KitwareMedical/SlicerVirtualReality#slicervirtualreality)

---

<div class="post-metadata">

**Author:** ![rkikinis](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/rkikinis/32/791_2.png) [@rkikinis](https://discourse.slicer.org/u/rkikinis)\
**Post date:** [January 22, 2019, 6:05pm UTC](https://discourse.slicer.org/t/slicer-4-10-1-summary-highlights-and-changelog/5452/3 "2019-01-22T18:05:50Z")

</div>

Hi,

This is awesome. Congratulations to the leaders and the community.

Ron
