diff options
| -rw-r--r-- | include/astra/ConeProjectionGeometry3D.h | 14 | ||||
| -rw-r--r-- | include/astra/ConeVecProjectionGeometry3D.h | 8 | ||||
| -rw-r--r-- | include/astra/FanFlatVecProjectionGeometry2D.h | 9 | ||||
| -rw-r--r-- | include/astra/ParallelProjectionGeometry3D.h | 14 | ||||
| -rw-r--r-- | include/astra/ParallelVecProjectionGeometry3D.h | 8 | ||||
| -rw-r--r-- | include/astra/ProjectionGeometry3D.h | 6 | ||||
| -rw-r--r-- | src/ConeProjectionGeometry3D.cpp | 13 | ||||
| -rw-r--r-- | src/ConeVecProjectionGeometry3D.cpp | 9 | ||||
| -rw-r--r-- | src/ParallelProjectionGeometry3D.cpp | 11 | ||||
| -rw-r--r-- | src/ParallelVecProjectionGeometry3D.cpp | 10 | 
10 files changed, 19 insertions, 83 deletions
| diff --git a/include/astra/ConeProjectionGeometry3D.h b/include/astra/ConeProjectionGeometry3D.h index 6257f7e..00e72ce 100644 --- a/include/astra/ConeProjectionGeometry3D.h +++ b/include/astra/ConeProjectionGeometry3D.h @@ -40,8 +40,8 @@ namespace astra   * \par XML Configuration   * \astra_xml_item{DetectorRowCount, int, Number of detectors for each projection.}   * \astra_xml_item{DetectorColCount, int, Number of detectors for each projection.} - * \astra_xml_item{DetectorWidth, float, Width of each detector.} - * \astra_xml_item{DetectorHeight, float, Width of each detector.} + * \astra_xml_item{DetectorSpacingX, float, Width of each detector.} + * \astra_xml_item{DetectorSpacingY, float, Width of each detector.}   * \astra_xml_item{ProjectionAngles, vector of float, projection angles in radians.}   * \astra_xml_item{DistanceOriginDetector, float, Distance between the center of rotation and the detectorarray.}   * \astra_xml_item{DistanceOriginSource, float, Distance between the center of rotation the the x-ray source.} @@ -51,8 +51,8 @@ namespace astra   *		proj_geom = astra_struct('cone');\n   *		proj_geom.DetectorRowCount = 512;\n   *		proj_geom.DetectorColCount = 512;\n - *		proj_geom.DetectorWidth = 1.0;\n - *		proj_geom.DetectorHeight = 1.0;\n + *		proj_geom.DetectorSpacingX = 1.0;\n + *		proj_geom.DetectorSpacingY = 1.0;\n   *		proj_geom.ProjectionAngles = linspace(0,pi,100);\n   *		proj_geom.DistanceOriginDetector = 10000;\n   *		proj_geom.DistanceOriginSource = 10000;\n @@ -161,12 +161,6 @@ public:  	 */  	virtual bool isOfType(const std::string& _sType) const; -	/** Turn this object into an XML object. -	 * -	 * @param _sNode The XML object to fill. -	 */ -	virtual void toXML(XMLNode* _sNode) const; -  	/** Returns the distance from the origin of the coordinate system to the source.  	 *  	 * @return Distance from the origin of the coordinate system to the source diff --git a/include/astra/ConeVecProjectionGeometry3D.h b/include/astra/ConeVecProjectionGeometry3D.h index 0330066..e82a411 100644 --- a/include/astra/ConeVecProjectionGeometry3D.h +++ b/include/astra/ConeVecProjectionGeometry3D.h @@ -56,7 +56,7 @@ namespace astra   * to a single projection, and consists of:   * ( srcX, srcY, srcZ, dX, dY, dZ, uX, uY, uZ, vX, vY, vZ )   *      src: the ray source - *      d  : the corner of the detector + *      d  : the centre of the detector plane   *      u  : the vector from detector pixel (0,0) to (0,1)   *      v  : the vector from detector pixel (0,0) to (1,0)   */ @@ -141,12 +141,6 @@ public:  	 */  	 virtual bool isOfType(const std::string& _sType) const; -	/** Turn this object into an XML object. -	 * -	 * @param _sNode The XML object to fill. -	 */ -	 virtual void toXML(XMLNode* _sNode) const; -  	 /**  	  * Returns a vector giving the projection direction for a projection and detector index  	  */ diff --git a/include/astra/FanFlatVecProjectionGeometry2D.h b/include/astra/FanFlatVecProjectionGeometry2D.h index 825bcbc..583e886 100644 --- a/include/astra/FanFlatVecProjectionGeometry2D.h +++ b/include/astra/FanFlatVecProjectionGeometry2D.h @@ -53,6 +53,15 @@ namespace astra   *		proj_geom.DetectorCount = 512;\n   *		proj_geom.Vectors = V;\n   * } + * + * \par Vectors + * Vectors is a matrix containing the actual geometry. Each row corresponds + * to a single projection, and consists of: + * ( srcX, srcY, srcZ, dX, dY uX, uY) + *      src: the ray source + *      d  : the centre of the detector array + *      u  : the vector from detector 0 to detector 1 + */   */  class _AstraExport CFanFlatVecProjectionGeometry2D : public CProjectionGeometry2D  { diff --git a/include/astra/ParallelProjectionGeometry3D.h b/include/astra/ParallelProjectionGeometry3D.h index aa93a29..72401e5 100644 --- a/include/astra/ParallelProjectionGeometry3D.h +++ b/include/astra/ParallelProjectionGeometry3D.h @@ -41,8 +41,8 @@ namespace astra   * \par XML Configuration   * \astra_xml_item{DetectorRowCount, int, Number of detectors for each projection.}   * \astra_xml_item{DetectorColCount, int, Number of detectors for each projection.} - * \astra_xml_item{DetectorWidth, float, Width of each detector.} - * \astra_xml_item{DetectorHeight, float, Width of each detector.} + * \astra_xml_item{DetectorSpacingX, float, Width of each detector.} + * \astra_xml_item{DetectorSpacingY, float, Width of each detector.}   * \astra_xml_item{ProjectionAngles, vector of float, projection angles in radians.}   *   * \par MATLAB example @@ -50,8 +50,8 @@ namespace astra   *		proj_geom = astra_struct('parallel');\n   *		proj_geom.DetectorRowCount = 512;\n   *		proj_geom.DetectorColCount = 512;\n - *		proj_geom.DetectorWidth = 1.0;\n - *		proj_geom.DetectorHeight = 1.0;\n + *		proj_geom.DetectorSpacingX = 1.0;\n + *		proj_geom.DetectorSpacingY = 1.0;\n   *		proj_geom.ProjectionAngles = linspace(0,pi,100);\n   * }   */ @@ -142,12 +142,6 @@ public:  	 */  	 virtual bool isOfType(const std::string& _sType) const; -	/** Turn this object into an XML object. -	 * -	 * @param _sNode The XML object to fill. -	 */ -	 virtual void toXML(XMLNode* _sNode) const; -  	 /**  	  * Returns a vector giving the projection direction for a projection and detector index  	  */ diff --git a/include/astra/ParallelVecProjectionGeometry3D.h b/include/astra/ParallelVecProjectionGeometry3D.h index f3ed949..5a63249 100644 --- a/include/astra/ParallelVecProjectionGeometry3D.h +++ b/include/astra/ParallelVecProjectionGeometry3D.h @@ -55,7 +55,7 @@ namespace astra   * to a single projection, and consists of:   * ( rayX, rayY, rayZ, dX, dY, dZ, uX, uY, uZ, vX, vY, vZ )   *      ray: the ray direction - *      d  : the corner of the detector + *      d  : the centre of the detector plane   *      u  : the vector from detector pixel (0,0) to (0,1)   *      v  : the vector from detector pixel (0,0) to (1,0)   */ @@ -141,12 +141,6 @@ public:  	 */  	 virtual bool isOfType(const std::string& _sType) const; -	/** Turn this object into an XML object. -	 * -	 * @param _sNode The XML object to fill. -	 */ -	 virtual void toXML(XMLNode* _sNode) const; -  	 /**  	  * Returns a vector giving the projection direction for a projection and detector index  	  */ diff --git a/include/astra/ProjectionGeometry3D.h b/include/astra/ProjectionGeometry3D.h index b6e63a8..19ac3ab 100644 --- a/include/astra/ProjectionGeometry3D.h +++ b/include/astra/ProjectionGeometry3D.h @@ -328,12 +328,6 @@ public:  	 */  	 virtual bool isOfType(const std::string& _sType) const = 0; -	/** Turn this object into an XML object. -	 * -	 * @param _sNode The XML object to fill. -	 */ -	 virtual void toXML(XMLNode* _sNode) const = 0; -  	 /**  	  * Returns a vector giving the projection direction for a projection and detector index  	  */ diff --git a/src/ConeProjectionGeometry3D.cpp b/src/ConeProjectionGeometry3D.cpp index 50f2c8f..eb9adcf 100644 --- a/src/ConeProjectionGeometry3D.cpp +++ b/src/ConeProjectionGeometry3D.cpp @@ -186,19 +186,6 @@ bool CConeProjectionGeometry3D::isOfType(const std::string& _sType) const  }  //---------------------------------------------------------------------------------------- -void CConeProjectionGeometry3D::toXML(XMLNode* _sNode) const -{ -	_sNode->addAttribute("type", "cone"); -	_sNode->addChildNode("DetectorSpacingX", m_fDetectorSpacingX); -	_sNode->addChildNode("DetectorSpacingY", m_fDetectorSpacingY); -	_sNode->addChildNode("DetectorRowCount", m_iDetectorRowCount); -	_sNode->addChildNode("DetectorColCount", m_iDetectorColCount); -	_sNode->addChildNode("ProjectionAngles", m_pfProjectionAngles, m_iProjectionAngleCount); -	_sNode->addChildNode("DistanceOriginDetector", m_fOriginDetectorDistance); -	_sNode->addChildNode("DistanceOriginSource", m_fOriginSourceDistance); -} - -//----------------------------------------------------------------------------------------  // Get the configuration object  Config* CConeProjectionGeometry3D::getConfiguration() const   { diff --git a/src/ConeVecProjectionGeometry3D.cpp b/src/ConeVecProjectionGeometry3D.cpp index 4f58188..a4bd22d 100644 --- a/src/ConeVecProjectionGeometry3D.cpp +++ b/src/ConeVecProjectionGeometry3D.cpp @@ -202,15 +202,6 @@ bool CConeVecProjectionGeometry3D::isOfType(const std::string& _sType) const  }  //---------------------------------------------------------------------------------------- -void CConeVecProjectionGeometry3D::toXML(XMLNode* _sNode) const -{ -	_sNode->addAttribute("type","cone_vec"); -	_sNode->addChildNode("DetectorRowCount", m_iDetectorRowCount); -	_sNode->addChildNode("DetectorColCount", m_iDetectorColCount); -	// TODO: -	//_sNode->addChildNode("ProjectionAngles", m_pfProjectionAngles, m_iProjectionAngleCount); -} -//----------------------------------------------------------------------------------------  // Get the configuration object  Config* CConeVecProjectionGeometry3D::getConfiguration() const   { diff --git a/src/ParallelProjectionGeometry3D.cpp b/src/ParallelProjectionGeometry3D.cpp index d47a4bb..eb200f9 100644 --- a/src/ParallelProjectionGeometry3D.cpp +++ b/src/ParallelProjectionGeometry3D.cpp @@ -159,17 +159,6 @@ bool CParallelProjectionGeometry3D::isOfType(const std::string& _sType) const  }  //---------------------------------------------------------------------------------------- -void CParallelProjectionGeometry3D::toXML(XMLNode* _sNode) const -{ -	_sNode->addAttribute("type","parallel3d"); -	_sNode->addChildNode("DetectorSpacingX", m_fDetectorSpacingX); -	_sNode->addChildNode("DetectorSpacingY", m_fDetectorSpacingY); -	_sNode->addChildNode("DetectorRowCount", m_iDetectorRowCount); -	_sNode->addChildNode("DetectorColCount", m_iDetectorColCount); -	_sNode->addChildNode("ProjectionAngles", m_pfProjectionAngles, m_iProjectionAngleCount); -} - -//----------------------------------------------------------------------------------------  // Get the configuration object  Config* CParallelProjectionGeometry3D::getConfiguration() const   { diff --git a/src/ParallelVecProjectionGeometry3D.cpp b/src/ParallelVecProjectionGeometry3D.cpp index 0f39c4a..cfac485 100644 --- a/src/ParallelVecProjectionGeometry3D.cpp +++ b/src/ParallelVecProjectionGeometry3D.cpp @@ -202,16 +202,6 @@ bool CParallelVecProjectionGeometry3D::isOfType(const std::string& _sType) const  }  //---------------------------------------------------------------------------------------- -void CParallelVecProjectionGeometry3D::toXML(XMLNode* _sNode) const -{ -	_sNode->addAttribute("type","parallel3d_vec"); -	_sNode->addChildNode("DetectorRowCount", m_iDetectorRowCount); -	_sNode->addChildNode("DetectorColCount", m_iDetectorColCount); -	// TODO: -	//_sNode->addChildNode("ProjectionAngles", m_pfProjectionAngles, m_iProjectionAngleCount); -} - -//----------------------------------------------------------------------------------------  // Get the configuration object  Config* CParallelVecProjectionGeometry3D::getConfiguration() const   { | 
