Varian-MedicalAffairsAppliedSolutions / MAAS-SFRThelper

Medical Affairs Applied Solutions ESAPI plugin tools to aid in the creation of structure patterns (spheres) or irregular stuctures (straight and angled rods) which can be evaluated or aid in the creation of treatment plans with the intention of not covering traditional PTVs homogeneously.
Other
4 stars 2 forks source link

Implement WashU Method #9

Open mattcschmidt opened 1 month ago

mattcschmidt commented 1 month ago

Predefined rules to Hexagonal method.

Sphere placement rules:

1.5cm in diameter. Placed on axial planes of CT acquisition. High dose spheres (PTV_6670) and Low Dose Spheres (PTV_Avoid) are 3cm (center to center) apart in the lateral and longitudinal direction. 3cm separation in superior inferior. Note for future: What do to if CT scan slice thickness is not in multiples of 3cm? Possible to round to the nearest CT scan thickness. All spheres not inside GTV_Retraction are removed. GTV Retraction is the GTV - 5 - 15mm and that retraction is user specified. (note to look at the UI components once more and see if a parameter already exists for this retraction). Number of high dose sphere’s maximized by brute force axis shifting. Build a baseline set of spheres. Remove all spheres from the GTV retraction Determine which direction removed the most spheres. Alternative: Sweep the grid geometry. See how many points can be inside or outside. Finite difference method. Placing spheres where placement makes sense.

mattcschmidt commented 1 month ago

Could potentially determine placement geometry: https://www.semanticscholar.org/paper/QUADRATURE-ON-A-SPHERICAL-SURFACE-Beentjes/245a9c0d107de3152736d83dfb658fa03f13468c

mattcschmidt commented 1 month ago

Script implementation

Algorithm creates structure S1 and S2

S1 is retraction of the GTV created by applying an isotropic negative margin to the GTV. (This is GTV Retraction). S2 was another GTV retraction with an inner margin 3mm less than that of S1. S2 is the boundary for sphere placement by the algorithm. S3 is a bounding box (entire lattice search area). Dimensions correspond to maximum PTV extent along cardinal patient axes, plus margin added to accommodate two vertex positions on each side of the bounding box.

mattcschmidt commented 1 month ago

Image

japnp commented 1 month ago

Lets try to wrap this up this week.