isce3  0.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Pegtrans.h
1 //
2 // Author: Joshua Cohen
3 // Copyright 2017
4 //
5 
6 #pragma once
7 
8 #include "forward.h"
9 
10 #include "Constants.h"
11 #include "DenseMatrix.h"
12 
13 namespace isce3 { namespace core {
14 
19  struct Pegtrans {
20 
23 
26 
29 
31  double radcur;
32 
34  Pegtrans() : mat {{}},
35  matinv {{}} {}
36 
38  Pegtrans(const Pegtrans &p) : mat(p.mat), matinv(p.matinv), ov(p.ov), radcur(p.radcur) {}
39 
44  void radarToXYZ(const Ellipsoid &elp, const Peg &p);
45 
50  void convertXYZtoSCH(const cartesian_t & xyzv, cartesian_t & schv) const;
51 
56  void convertSCHtoXYZ(const cartesian_t & schv, cartesian_t & xyzv) const;
57 
63  void convertXYZdotToSCHdot(const cartesian_t & sch, const cartesian_t & xyzdot,
64  cartesian_t & schdot) const;
65 
71  void convertSCHdotToXYZdot(const cartesian_t & sch, const cartesian_t & schdot,
72  cartesian_t & xyzdot) const;
73 
75  void SCHbasis(const cartesian_t &,cartmat_t&,cartmat_t&) const;
76  };
77 }}
void radarToXYZ(const Ellipsoid &elp, const Peg &p)
Compute transformation matrices for a given Peg point.
Definition: Pegtrans.cpp:18
void convertXYZdotToSCHdot(const cartesian_t &sch, const cartesian_t &xyzdot, cartesian_t &schdot) const
Transform ECEF velocity to SCH.
Definition: Pegtrans.cpp:75
void convertSCHdotToXYZdot(const cartesian_t &sch, const cartesian_t &schdot, cartesian_t &xyzdot) const
Transform SCH velocity to ECEF.
Definition: Pegtrans.cpp:86
void convertXYZtoSCH(const cartesian_t &xyzv, cartesian_t &schv) const
Transform ECEF coordinates to SCH.
Definition: Pegtrans.cpp:45
cartmat_t mat
Transformation matrix from SCH to ECEF.
Definition: Pegtrans.h:22
Pegtrans()
Empty constructor.
Definition: Pegtrans.h:34
Definition: DenseMatrix.h:13
cartesian_t ov
Offset vector between center of Ellipsoid and center of local sphere.
Definition: Pegtrans.h:28
void SCHbasis(const cartesian_t &, cartmat_t &, cartmat_t &) const
Compute the transform matrix from ECEF to local SCH frame.
Definition: Pegtrans.cpp:97
void convertSCHtoXYZ(const cartesian_t &schv, cartesian_t &xyzv) const
Transform SCH coordinates to ECEF.
Definition: Pegtrans.cpp:60
cartmat_t matinv
Transformation matrix from ECEF to SCH.
Definition: Pegtrans.h:25
double radcur
Radius of curvature of local sphere.
Definition: Pegtrans.h:31
Data structure to assist with Peg point transformations.
Definition: Pegtrans.h:19

Generated for ISCE3.0 by doxygen 1.8.5.