Commit 4637cb47 authored by Philipp Schäfer's avatar Philipp Schäfer
Browse files

ART

- RayGrid now has a get function to access a ray via theta and phi index
- AdaptiveRayGrid is now publicly derived from RayGrid
parent 6c2c5a27
......@@ -32,7 +32,7 @@ namespace ITAPropagationPathSim
{
namespace EigenraySearch
{
class ITA_PROPAGATION_PATH_SIM_API CAdaptiveRayGrid : private CRayGrid
class ITA_PROPAGATION_PATH_SIM_API CAdaptiveRayGrid : public CRayGrid
{
private:
std::set< std::shared_ptr<CRay> > vpNewRaysOfLastAdaptation;
......@@ -43,8 +43,7 @@ namespace ITAPropagationPathSim
public:
void Reset(const CRayGrid& rayGrid);
CRayGrid RayGrid() { return *this; }
const std::set< std::shared_ptr<CRay> >& UniqueRays() { return CRayGrid::UniqueRays(); }
//! Returns a unique set of the rays which were adding during the last adaptation
const std::set< std::shared_ptr<CRay> >& NewRaysOfLastAdaptation() { return vpNewRaysOfLastAdaptation; }
//! Simple adaptation method: Setting the limits to neighboring rays and shoots additional rays to double the angular resolution of the grid.
......
......@@ -109,6 +109,7 @@ namespace ITAPropagationPathSim
inline int NRays() const { return vpRays.size(); }
inline const VistaVector3D& SourcePosition() const { return v3SourcePos; }
inline const std::set<std::shared_ptr<CRay>>& UniqueRays() const { return vpUniqueRays; }
inline const std::shared_ptr<CRay>& At(int idxTheta, int idxPhi) const { return vvpRayMatrix[idxTheta][idxPhi]; }
//! Returns a ray grid containing the rays surrounding the given ray (including this ray).
/**
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment