Modules:Measurements-Documentation-3.6

From Slicer Wiki
Jump to: navigation, search
Home < Modules:Measurements-Documentation-3.6

Return to Slicer 3.6 Documentation

Gallery of New Features


Measurements

Measurements

Measurements: Ruler GUI - To Be Updated
Measurements: Angle GUI - To Be Updated
Using a ruler to measure between points on a model

General Information

Module Type & Category

Type: Interactive

Category: Base

Authors, Collaborators & Contact

  • Nicole Aucoin (3D): BWH
  • Steve Pieper (2D): BWH
  • Karthik Krishnan and Will Schroeder: Kitware
  • Contact: Nicole Aucoin, nicole@bwh.harvard.edu

Module Description

The Measurements module allows you to add rulers and angle widgets to the scene and they will be displayed and able to be manipulated in both the 3D and 2D windows.

Usage

In order to get the end points of the ruler or the angle to move along a selected model surface, you currently need to rotate the view so that the handle is rendered on top of the model, the next click will snap it to the model surface. If you move the model or slice plane, the measurement point won't move with it, the constraint only works when moving the end point handle. If you make the model or slice invisible, the end point cannot be moved, as the constraint will always be false.

When you add a new angle or affine transform widget, you have to click once in the 3D window to render the transform widget, and three times to place the angle widget end points. After that, you can move the widgets around by dragging the handles.

Use Cases, Examples

This module is especially appropriate for these use cases:

  • Use Case 1: Useful for measuring tumor diameters.
  • Use Case 2: Measuring angles between bones.

Examples of the module in use:

  • Example 1: Attach/constrain end points of the widgets to volume slices to measure distances and angles between image features.
  • Example 2: Attach/constrain end points of the widgets to models to measure distances and angles between 3D structures.

Tutorials

Links to tutorials explaining how to use this module:

  • Tutorial 1: coming soon

Quick Tour of Features and Use

  • Ruler Widget panel:
    • Modify All Ruler Nodes panel
      • Select the visibility of all ruler nodes. Set all rulers invisible or set all rulers visible.
    • Modify Selected Ruler Node panel
      • Ruler Node Select: create a new ruler node or show the parameters of a previously created ruler node
      • Toggle Visibility: if checked, this ruler is visible, if not, this ruler is invisible.
      • Position 1 and Position 2: ruler end point positions, updates when the ruler handles are moved in 3D or 2D, and can be used to update the end points by typing in a value.
      • Constrain Ruler To Models
        • Select Ruler Model 1 and 2: constrain the motion of the ruler end point to be on the surface of the selected model or volume slice plane. In order to get the end points of the ruler to move along a selected model surface, you currently need to rotate the view so that the handle is rendered on top of the model, the next click will snap it to the model surface. If you move the model or slice plane, the measurement point won't move with it, the constraint only works when moving the end point handle. If you make the model or slice invisible, the end point cannot be moved, as the constraint will always be false.
      • Display Options
        • Set End Point Color: set the colour used to show the ruler end points (coming soon: different colors for each end)
        • Set Line Color: set the colour used to show the ruler line
        • Toggle Distance Annotation Visibility: if checked, show the distance in mm between the end points along the line (coming soon: ability to change the color of the text)
        • Distance Annotation Format: how to display the distance annotation, use string formatting strings, %g for an auto formatted floating point, %.2f to show two decimal places. Any text is allowed, defaults to mm (millimeters).
        • Distance Annotation Scale: how large to render the distance annotation text
User Interface
  • Angle Widget panel:
    • Modify All Angle Nodes panel:
      • Select the visibility of all angle nodes. Set all angles invisible or set all angles visible.
    • Modify Selected Angle Node panel:
      • Angle Node Select: create a new angle node or show the parameters of a previously created angle node
      • Toggle Visibility: if checked, this angle is visible, if not, this angle is invisible.
      • Position 1 and Position 2 and Center: angle end point and center positions, updates when the angle handles are moved in 3D or 2D, and can be used to update the points by typing in a value.
      • Constrain Angle To Models:
        • Select Angle Model 1 and 2 and Center: constrain the motion of the angle end points to be on the surface of the selected model or volume slice plane. In order to get the end points of the angle to move along a selected model surface, you currently need to rotate the view so that the handle is rendered on top of the model, the next click will snap it to the model surface. If you move the model or slice plane, the measurement point won't move with it, the constraint only works when moving the end point handle. If you make the model or slice invisible, the end point cannot be moved, as the constraint will always be false.
      • Display Options:
        • Set End Point Color: set the colour used to show the angle end points
        • Set Line Color: set the colour used to show the angle lines
        • Toggle Ray 1 Visibility: if checked, show the ray from the first end point to the center
        • Toggle Ray 2 Visibility: if checked, show the ray from the second end point to the center
        • Toggle Arc Visibility: if checked, show the arc between the two angle arms.
        • Angle Annotation Format: how to display the angle annotation, use string formatting strings, %g for an auto formatted floating point, %.2f to show two decimal places. Any text is allowed after the numerical specification.
        • Angle Annotation Scale: how large to render the angle annotation text
User Interface

Development

Notes from the Developer(s)

  • This module was added at version 3.5, and expanded at version 3.6, and it will not work unless Slicer3 is compiled with VTK5.6 or higher.

Dependencies

No other modules or packages are required for this module's use.

Tests

On the Dashboard, these tests verify that the module is working on various platforms:

Known bugs

Links to known bugs in the Slicer3 bug tracker:

Usability issues

Follow this link to the Slicer3 bug tracker. Please select the usability issue category when browsing or contributing.

Source code & documentation

Measurements source code

Documentation generated by doxygen:

More Information

Acknowledgment

This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149.

References