|
| 1 | +## "External Beam Planning" module description |
| 2 | + |
| 3 | +The ExternalBeamPlanning module is a generic, extensible module for forward |
| 4 | +planning of external beam radiation therapy treatments. |
| 5 | + |
| 6 | +The "External Beam Planning" module is responsible for creating a beam plan or ion beam plan |
| 7 | +according to DICOM RT standard. Only a few basic features are supported. |
| 8 | +Each plan consists of a number of beams: static or dynamic. Each plan supports |
| 9 | +only one isocenter point, multiple isocenters per a single plan are not allowed. |
| 10 | + |
| 11 | +This work was in part funded by An Applied Cancer Research Unit of Cancer Care Ontario |
| 12 | +with funds provided by the Ministry of Health and Long-Term Care and the Ontario Consortium |
| 13 | +for Adaptive Interventions in Radiation Oncology (OCAIRO) to provide free, open-source toolset |
| 14 | +for radiotherapy and related image-guided interventions. |
| 15 | + |
| 16 | +Author: Csaba Pinter (PerkLab, Queen's University), Greg Sharp (Massachusetts General Hospital) |
| 17 | +Contact: Csaba Pinter, < email> [email protected]</ email> |
| 18 | + |
| 19 | + |
| 20 | + |
| 21 | + |
| 22 | +### Use Cases |
| 23 | +- Proton dose calculation |
| 24 | +- Any dose engine can be integrated (C++, Python, Matlab) |
| 25 | + |
| 26 | +### Tutorials |
| 27 | +[Orthovoltage RT treatment planning tutorial](https://github.com/SlicerRt/SlicerRtDoc/blob/master/tutorials/SlicerRT_Tutorial_OrthovoltageDoseEngine.pptx) (uses EGSnrc) |
| 28 | + |
| 29 | +### Graphical User Interface loadable module (GUI). Panels and their use |
| 30 | + |
| 31 | + |
| 32 | + |
| 33 | +Loadable GUI module "External Beam Planning" is used to setup beam parameters |
| 34 | +for beams or ion beams, or modify already created beams. |
| 35 | +Static RT beam is setup by: Isocenter position, SAD, SID, Jaws borders, MLC positions. Static beam is fixed. |
| 36 | + |
| 37 | +Dynamic RT and Ion RT beams are setup by: initial and final angles of rotation around gantry axis, |
| 38 | +direction of rotation, isocenter position, SAD, SID, Jaws borders, MLC positions, scanning spot map, etc. |
| 39 | +Dynamic beam changes it position over time by means of rotation or (and) changing the position of phase space of the beam. |
| 40 | + |
| 41 | +#### Active RT plan |
| 42 | + |
| 43 | + |
| 44 | + |
| 45 | +1. **Active RT plan**: Selected RT Plan |
| 46 | +2. **Ion plan**: flag to generate RTIonPlan instead of RTPlan |
| 47 | + |
| 48 | +#### Plan parameters |
| 49 | + |
| 50 | + |
| 51 | + |
| 52 | +1. **Reference volume**: Reference volume node data (usually CT) |
| 53 | +2. **Structure set**: Segmentation node data |
| 54 | +3. **Points of interest**: Markups fiducial to be used as isocenter |
| 55 | +4. **Isocenter**: Isocenter position in RAS |
| 56 | +5. **Center views**: Center slice views on isocenter |
| 57 | +6. **Target volume**: Select targer ROI |
| 58 | +7. **Isocenter at target center**: Set isocenter in the center of the targer ROI |
| 59 | +8. **Dose engine**: Select a dose engine calculator **Not implemented** |
| 60 | +9. **Rx Dose (Gy)**: Setup an amount of dose in Gy |
| 61 | + |
| 62 | +#### Output |
| 63 | + |
| 64 | + |
| 65 | + |
| 66 | +1. **Output dose volume**: Setup output dose volume |
| 67 | +2. **Clear dose**: Clear dose volume |
| 68 | +3. **Calculate WED**: Calculate water-equivalent distance **Not implemented** |
| 69 | +4. **Calculate Dose**: Calculate dose according to the engine parameters **Not implemented** |
| 70 | + |
| 71 | +#### Beams |
| 72 | + |
| 73 | + |
| 74 | + |
| 75 | +1. **Arc beam sequence**: Activate dynamic beam arc movement around gantry rotation axis |
| 76 | +2. **Initial angle**: Initial angle position in degrees |
| 77 | +3. **Final angle**: Final angle position in degrees |
| 78 | +4. **Angle step**: Angle step |
| 79 | +5. **Rotation direction**: Clockwise (CW) of CounterClockwise (CCW) rotation |
| 80 | +5. **Add beam**: Add static or dynamic arc beam to the plan |
| 81 | +6. **Remove beam**: Remove selected beam from the plan |
| 82 | + |
| 83 | +### Arc beam |
| 84 | + |
| 85 | +The beam movement around rotation axis could be used to calculate a filtered back-projection reconstruction for cone-beam geometries. |
| 86 | +For fast forward and back projection reconstruction the [RTK](https://www.openrtk.org) library can be used. |
| 87 | + |
| 88 | +### References |
| 89 | + |
| 90 | +1. Sharp, G., Pinter, C., Unkelbach, J., Fichtinger, G. (2017). Open Source Proton Treatment Planning in 3D Slicer: Status Update. Proceedings to the 56 Annual Meeting of the Particle Therapy Cooperative Group (PTCOG), 8-13 May 2017. International Journal of Particle Therapy: Summer 2017, Vol. 4, No. 1, pp. 14-83. |
| 91 | + |
| 92 | +### Information for Developers |
| 93 | + |
| 94 | +- Sample C++ dose engine: [https://github.com/SlicerRt/SlicerRT/blob/master/ExternalBeamPlanning/Widgets/qSlicerMockDoseEngine.h](https://github.com/SlicerRt/SlicerRT/blob/master/ExternalBeamPlanning/Widgets/qSlicerMockDoseEngine.h) |
| 95 | +- Sample Python dose engine: [https://github.com/SlicerRt/SlicerRT/blob/master/ExternalBeamPlanning/Widgets/Python/MockPythonDoseEngine.py](https://github.com/SlicerRt/SlicerRT/blob/master/ExternalBeamPlanning/Widgets/Python/MockPythonDoseEngine.py) |
| 96 | +- Future plans |
| 97 | + - Inverse planning capabilities |
| 98 | + - Matlab plugin adapter |
| 99 | + - Ports module (apertures, MLC, target volume) |
| 100 | + - Beam groups (common parameters for a group of beams) |
| 101 | + |
0 commit comments