22 #include <odinpara/ldrblock.h>
23 #include <odinpara/ldrnumbers.h>
24 #include <odinpara/ldrarrays.h>
26 #include <odinpara/odinpara.h>
73 RotMatrix(
const STD_string& object_label =
"unnamedRotMatrix" );
103 bool operator < (
const RotMatrix& srm)
const;
132 friend class RotMatrixVector;
134 class rowVec :
public dvector {
186 Geometry(
const STD_string& label=
"unnamedGeometry");
317 void get_orientation(
double& heightAng,
double& azimutAng,
double& inplaneAng,
bool& revSlice)
const;
377 dvector get_readVector_inplane()
const;
378 dvector get_phaseVector_inplane()
const;
380 void append_all_members();
382 double deg2rad(
double degree)
const {
return degree/180.0*PII;}
408 mutable bool cache_up2date;
409 mutable bool inv_trans_cache;
410 mutable double rotmat_cache[3][3];
411 mutable double offset_cache[3];
Geometry & set_nSlices(unsigned int nslices)
double get_offset(direction dir) const
Geometry & set_orientation(sliceOrientation orientation)
Geometry & set_sliceDistance(double dist)
dvector get_phaseVector() const
Geometry & set_offset(direction dir, double offset)
double get_sliceDistance() const
darray get_cornerPoints(const Geometry &background, unsigned int backgrslice) const
Geometry(const Geometry &ia)
Geometry & transpose_inplane(bool reverse_read=false, bool reverse_phase=false)
RotMatrix get_gradrotmatrix(bool transpose=false) const
Geometry & set_orientation_and_offset(const dvector &readvec, const dvector &phasevec, const dvector &slicevec, const dvector ¢ervec)
double get_sliceThickness() const
Geometry & set_FOV(direction dir, double fov)
dvector get_sliceVector() const
Geometry(const STD_string &label="unnamedGeometry")
dvector get_readVector() const
dvector get_center() const
sliceOrientation get_orientation() const
geometryMode get_Mode() const
Geometry & operator=(const Geometry &ia)
unsigned int get_nSlices() const
double get_FOV(direction dir) const
Geometry & set_orientation(double heightAng, double azimutAng, double inplaneAng, bool revSlice=false)
static sliceOrientation get_slice_orientation(const dvector &svec)
void get_orientation(double &heightAng, double &azimutAng, double &inplaneAng, bool &revSlice) const
Geometry & set_Mode(geometryMode mode)
dvector transform(const dvector &rpsvec, bool inverse=false) const
Geometry & set_sliceThickness(double thick)
dvector get_sliceOffsetVector() const
dvector operator*(const dvector &vec) const
bool operator==(const RotMatrix &srm) const
RotMatrix(const RotMatrix &sct)
RotMatrix & set_inplane_rotation(float phi)
RotMatrix & operator=(const RotMatrix &sct)
dvector & operator[](unsigned int index)
RotMatrix(const STD_string &object_label="unnamedRotMatrix")
tjarray< fvector, float > farray