Skip to content

Commit

Permalink
Merge branch 'master' into refactor/RAM-3539_hatchling
Browse files Browse the repository at this point in the history
# Conflicts:
#	pyproject.toml
  • Loading branch information
jrkerns committed Apr 24, 2024
2 parents c739cff + 1d9291f commit 3efe355
Show file tree
Hide file tree
Showing 25 changed files with 3,535 additions and 68 deletions.
12 changes: 12 additions & 0 deletions bitbucket-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -227,6 +227,17 @@ definitions:
- "pylinac/core/**"
- "tests_basic/test_winstonlutz.py"
- "pylinac/winston_lutz.py"
- step: &plan-generator-tests
name: Plan generator tests
script:
- source venv/bin/activate
- pytest tests_basic/test_plan_generator.py --cov-report term --junitxml=./test-reports/pytest_results.xml
condition:
changesets:
includePaths:
- "pylinac/core/**"
- "pylinac/plan_generator/**"
- "tests_basic/test_plan_generator.py"
- step: &core-module-tests
name: Run core module tests
script:
Expand Down Expand Up @@ -301,6 +312,7 @@ pipelines:
- step: *vmat-tests
- step: *winston-lutz-tests
- step: *winston-lutz-mtmf-tests
- step: *plan-generator-tests
- step: *core-module-tests

branches:
Expand Down
38 changes: 38 additions & 0 deletions docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,44 @@
Changelog
=========

v 3.23.0
--------

Plan Generator
^^^^^^^^^^^^^^

* A new module has been introduced: the plan generator! This module can assist in generating DICOM RT plan QA files
customized for your clinic. It can produce basic shapes and typical QA fields such as picket fence, open fields,
and more. See the :ref:`plan-generator` section for more.
* RT plan fluence can be plotted using a new function: ``plot_fluences()``. This will plot the fluence of the plan
fields as figures. This is useful for visualizing the plan fluence and comparing it to the expected fluence. This
can be used in conjunction with the plan generator to visualize the fluence of the generated plan. See :ref:`plan_fluence`
for more.

Picket Fence
^^^^^^^^^^^^

* The HDMLC arrangement was changed from 10x40x10 leaves to 14x32x14 leaves to match reality.
This may affect the max leaf error metric slightly. In our tests, the change did not skew positive
or negative. The mean change was approximately 0.05mm. While changing a definition is not
desirable, matching the actual configuration is more important. If for some reason you need
the old configuration, you can create a custom MLC arrangement. See the :ref:`customizing_pf_mlcs` section.
* The leaf error barplot to the right/bottom of a picket fence plot was somewhat confusing. It would show the
mean and standard deviation of the error, but not the entire distribution. This plot has been
converted to a normal boxplot, showing the median, Q1, Q3 and flier data. More about the boxplot
can be read here: `boxplots <https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.boxplot.html#matplotlib.axes.Axes.boxplot>`__.
* The leaf error subplot that shows up at the right/bottom of the analyzed image now shows leaf numbers instead
of pixels.
* A new method is available ``plot_leaf_error``. This method will create a figure of the leaf error boxplot. This is
similar to the leaf error subplot that shows up at the right/bottom of the analyzed image, but can be called independently.

Core
^^^^

* Pylinac is meant to be compatible with all Python versions still in security lifecycles, which is currently 3.8.
Some syntax was introduced that was not compatible with Python 3.8. This has been fixed. Note that
Python 3.8 will be EOL in October 2024. The next pylinac release after that will drop support for Python 3.8.

v 3.22.0
--------

Expand Down
Binary file added docs/source/images/jaw_orientation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/images/new_qa_plan.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@

core_modules
image_generator
plan_generator
contrib

.. toctree::
Expand All @@ -53,6 +54,7 @@
topics/scale
topics/profiles
topics/image_metrics
topics/fluence

.. toctree::
:hidden:
Expand Down
5 changes: 3 additions & 2 deletions docs/source/picketfence.rst
Original file line number Diff line number Diff line change
Expand Up @@ -305,9 +305,10 @@ Results will look similar. Here's an example of the results of using a log:
Customizing MLCs
----------------

As of v2.5, MLC configuration is set a priori (vs empirical determination as before) and the user can also create
custom MLC types. Pylinac was only able to handle Millennium and HD Millennium previously.
.. versionadded:: 2.5

MLC configuration is set a priori (vs empirical determination in 2.4 and below) and the user can also create
custom MLC types.

Preset configurations
^^^^^^^^^^^^^^^^^^^^^^
Expand Down
Loading

0 comments on commit 3efe355

Please sign in to comment.