The purpose of this introduction is to give a proper overview of the components that tutorials rely on in order to work properly. Tutorials are learning-oriented and is a great place for you to start trying out various features of our libraries, and we don't want you to get distracted or confused by the implementation details; therefore, we have isolated the learning part of the tutorials (without all the other necessary implementation details) so that you can focus on learning.
Tutorials are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that. (Documentation Philosophy for Cornerstone3D)
Running a Tutorial Locally
We have included a
tutorial example in the repo, which you can find at
packages/tools/examples/tutorial/index.ts. This file contains all the necessary setup code (explained above) for running a tutorial locally. When you open the file, you will see a dedicated place for you to copy and paste and insert the code from the tutorial. So, this way, you don't have to worry about the setup code, and you can focus on the tutorial itself.
How to run it?
# from the root of the library
# change folder to tools package
# run the tutorial example
yarn run example tutorial
Then open a new tab in your browser and navigate to
🎉 Happy Learning 🎉
For curious learners, here are some components that are used (behind the scene) for each tutorial.
Cornerstone3D does not deal with loading images. As we will learn later,
Cornerstone3D also is capable of rendering
Volumes in any orientation too.
Therefore, proper image and volume loaders should be registered with
Cornerstone3D so that it can work as intended. Examples of such loaders are
In order for
Cornerstone3D to properly show the properties of an image such
as voi, suv values, etc., it needs metadata (in addition to the image data itself).
Therefore, proper metadata providers should be registered with
Cornerstone3D so that it can work as intended. Examples of such providers are
WADORSHeaderProviderfor keeping naturalized metadata for proper PT SUV calculations
Cornerstone3DTools need to be initialized by calling