summaryrefslogtreecommitdiffstats
path: root/include/astra/ProjectionGeometry3D.h
diff options
context:
space:
mode:
authorWillem Jan Palenstijn <wjp@usecode.org>2021-12-01 14:43:03 +0100
committerWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2021-12-06 11:01:36 +0100
commit86615d4161b050fbf3335e30ae85801aa1cefe92 (patch)
tree281a13131e0912e2a76754461e91b98767cd5be1 /include/astra/ProjectionGeometry3D.h
parent0070b8bafe1365b97ed922bd0ede84de7edd7dc7 (diff)
downloadastra-86615d4161b050fbf3335e30ae85801aa1cefe92.tar.gz
astra-86615d4161b050fbf3335e30ae85801aa1cefe92.tar.bz2
astra-86615d4161b050fbf3335e30ae85801aa1cefe92.tar.xz
astra-86615d4161b050fbf3335e30ae85801aa1cefe92.zip
Move bounding box projection to ProjectionGeometry3D
Diffstat (limited to 'include/astra/ProjectionGeometry3D.h')
-rw-r--r--include/astra/ProjectionGeometry3D.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/astra/ProjectionGeometry3D.h b/include/astra/ProjectionGeometry3D.h
index 2cff9f1..73e446b 100644
--- a/include/astra/ProjectionGeometry3D.h
+++ b/include/astra/ProjectionGeometry3D.h
@@ -307,6 +307,16 @@ public:
*/
virtual void indexToAngleDetectorIndex(int _iIndex, int& _iAngleIndex, int& _iDetectorIndex) const;
+ /** Find a bounding box of the projections of a box in the volume.
+ * It may not be the tighest possible bounding box.
+ * This may fall (partially or fully) outside of the actual detector.
+ */
+ virtual void getProjectedBBox(double fXMin, double fXMax,
+ double fYMin, double fYMax,
+ double fZMin, double fZMax,
+ double &fUMin, double &fUMax,
+ double &fVMin, double &fVMax) const;
+
/** Project a point onto the detector. The 3D point coordinates
* are in units. The output fU,fV are the (unrounded) indices of the
* detector column and row.