26 #ifndef __BIAS_ProjectionParametersBufferedRay_hh__
27 #define __BIAS_ProjectionParametersBufferedRay_hh__
28 #include "bias_config.h"
30 #include <Base/Common/BIASpragmaStart.hh>
31 #include <Geometry/ProjectionParametersBase.hh>
32 #include <Geometry/ProjectionParametersPerspective.hh>
33 #include <MathAlgo/Interpolator.hh>
64 if (ppb_)
delete ppb_;
65 if (unprojectMappingIgnoreDistortion_)
66 delete[] unprojectMappingIgnoreDistortion_;
67 if (unprojectMappingDistortion_)
68 delete[] unprojectMappingDistortion_;
78 bool IgnoreDistortion =
false)
const;
81 HomgPoint2D &p2d,
bool IgnoreDistortion =
false)
const;
84 const double& depth = 1.0,
85 bool IgnoreDistortion =
false)
const;
89 bool IgnoreDistortion =
false)
const;
98 bool IgnoreDistortion =
false)
const;
100 #ifdef BIAS_HAVE_XML2
102 virtual int XMLGetClassName(std::string& TopLevelTag,
double& Version)
const;
105 virtual int XMLOut(
const xmlNodePtr Node,
XMLIO& XMLObject)
const;
108 virtual int XMLIn(
const xmlNodePtr Node,
XMLIO& XMLObject);
111 friend std::ostream&
operator<<(std::ostream &os,
116 inline void SetMask(
bool mask) { mask_ = mask; UpdateProjection_(); };
134 const bool UpdateProjection_();
138 const bool UpdateFromProjection_();
141 const bool UpdateBuffer_();
148 os<<
"ProjectionParametersRay:"<<std::endl;
154 #include <Base/Common/BIASpragmaEnd.hh>
This class maps image coords to rays which are buffered for fast lookup.
class HomgPoint2D describes a point with 2 degrees of freedom in projective coordinates.
const bool UpdateProjection()
Set attributes of wrapped projection from attributes of this ProjectionParametersBufferedRay instance...
void SetMask(bool mask)
Set mask flag and update buffered rays from wrapped projection parameters.
virtual ~ProjectionParametersBufferedRay()
Wrapper class for reading and writing XML files based on the XML library libxml2. ...
virtual ProjectionParametersBufferedRay * Clone() const
Covariant virtual copy constructor used in BIAS::Projection.
class HomgPoint3D describes a point with 3 degrees of freedom in projective coordinates.
std::ostream & operator<<(std::ostream &os, const Array2D< T > &arg)
Camera parameters which define the mapping between rays in the camera coordinate system and pixels in...