Difference between revisions of "Documentation/Nightly/Developers/Slicer"
(Prepend documentation/versioncheck template. See http://na-mic.org/Mantis/view.php?id=2887) |
Tag: 2017 source edit |
||
(One intermediate revision by one other user not shown) | |||
Line 4: | Line 4: | ||
3D Slicer is a free [http://en.wikipedia.org/wiki/Open_source open source] extensible software application for medical image computing and visualization. Mainly written in [http://en.wikipedia.org/wiki/C%2B%2B C++] and based on the [http://www.na-mic.org/Wiki/index.php/NA-MIC-Kit NA-MIC kit], 3D Slicer relies on a variety of libraries: [http://www.vtk.org VTK], [http://itk.org ITK], [http://commontk.org CTK], [http://www.cmake.org CMake], [http://qt.nokia.com/products/ Qt] and [http://www.python.org/ Python]. | 3D Slicer is a free [http://en.wikipedia.org/wiki/Open_source open source] extensible software application for medical image computing and visualization. Mainly written in [http://en.wikipedia.org/wiki/C%2B%2B C++] and based on the [http://www.na-mic.org/Wiki/index.php/NA-MIC-Kit NA-MIC kit], 3D Slicer relies on a variety of libraries: [http://www.vtk.org VTK], [http://itk.org ITK], [http://commontk.org CTK], [http://www.cmake.org CMake], [http://qt.nokia.com/products/ Qt] and [http://www.python.org/ Python]. | ||
− | To ensure the stability of the application, relying on a robust [http://www.kitware.com/solutions/softwareprocess/softwareprocess.html software process], the source code is compiled and tested on a daily basis on a [[Documentation/{{documentation/version}}/SlicerApplication/HardwareConfiguration|variety of platform configurations]]. The testing results are summarized and reported using a web-based centralized CDash [http://slicer.cdash.org/index.php?project=Slicer4 dashboard]. Developers of 3D Slicer can also report issues on the [ | + | To ensure the stability of the application, relying on a robust [http://www.kitware.com/solutions/softwareprocess/softwareprocess.html software process], the source code is compiled and tested on a daily basis on a [[Documentation/{{documentation/version}}/SlicerApplication/HardwareConfiguration|variety of platform configurations]]. The testing results are summarized and reported using a web-based centralized CDash [http://slicer.cdash.org/index.php?project=Slicer4 dashboard]. Developers of 3D Slicer can also report issues on the [https://discourse.slicer.org/ Slicer Discourse Forum] or using the [https://github.com/Slicer/Slicer/issues issues tracker]. |
3D Slicer consists of both a lean application core and modules offering specific functionality. The core implements the user interface, provides support for data input/output (IO) and visualization and also exposes developer interfaces that support extension of the application with new modules. | 3D Slicer consists of both a lean application core and modules offering specific functionality. The core implements the user interface, provides support for data input/output (IO) and visualization and also exposes developer interfaces that support extension of the application with new modules. |
Latest revision as of 10:08, 25 March 2020
Home < Documentation < Nightly < Developers < Slicer
For the latest Slicer documentation, visit the read-the-docs. |
Slicer
3D Slicer is a free open source extensible software application for medical image computing and visualization. Mainly written in C++ and based on the NA-MIC kit, 3D Slicer relies on a variety of libraries: VTK, ITK, CTK, CMake, Qt and Python.
To ensure the stability of the application, relying on a robust software process, the source code is compiled and tested on a daily basis on a variety of platform configurations. The testing results are summarized and reported using a web-based centralized CDash dashboard. Developers of 3D Slicer can also report issues on the Slicer Discourse Forum or using the issues tracker.
3D Slicer consists of both a lean application core and modules offering specific functionality. The core implements the user interface, provides support for data input/output (IO) and visualization and also exposes developer interfaces that support extension of the application with new modules.
Multiple types of modules are supported: CLI, Loadable module, Scripted module and Editor effect. While the developer has to choose between one of these types to implement its module, the end user won't notice the difference as they all share the same look & feel. The choice for a given type of module is usually based on the type of inputs/parameters for a given module.
These modules can be either built-in or installed on demand via the extensions manager.