vrcore  0.45
visuReal Messkern
 All Classes Files Functions Variables
Engine.h
1 #pragma once
2 
3 namespace vr {
4 
5 class Engine {
6 public:
7  /*Diese Daten brauchen wir fuer den Aufruf v. Measuring.*/
8  Engine (Front3D& front3d, const RealConstants& real, const PhotoParams& frontValues,
9  ComputationModel computationModel);
10  ~Engine(void);
11 
12  void initAspects(FrontPic2D& frontPicData,
13  SidePic2D* sidePicDataR,
14  SidePic2D* sidePicDataL,
15  PhotoParams* valuesR,
16  PhotoParams* valuesL);
17  // Bekommt Daten der Kameras und der Bilder und berechnet aus ihnen Raumpunkte
18  void compute3D();
24  int calcSys_B(double* residuum,
25  const cv::Vec2d& m_R,
26  const cv::Vec2d& m_L,
27  const cv::Vec2d& m_M);
28  bool isRightAvailable() const;
29  bool isLeftAvailable() const;
30 
31  void print();
32  void print(std::ofstream& rFile);
33 
34  const cv::Vec3d& getPupil(LateralSide side) const { return front_.B.pupil[side]; };
35  const FrontPic3D& getFrontPic3D() const { return front_.im3D; };
36  const FrontB& world() const { return front_.B; };
37  const cv::Matx33d& getRotationMatrixBToF();
38 private:
39  // to satisfy the Rule of Three, see http://drdobbs.com/184401400
40  Engine (const Engine& engine); // not (yet) implemented
41  Engine& operator= (const Engine& engine); // not (yet) implemented
42 
43  void compute3D(LateralSide side);
51  double estimatedYDepthOfSide(SideAspect& side, const cv::Vec3d& frontImagePoint, double a = 0) const;
52  // Wertet eine Seitenansicht aus
53  void calcSide(SideAspect& side);
54  void calc_coordinates_ohne_Buegel();
55  bool hasSideAspect(LateralSide side) const;
56 
57  FrontAspect front_;
58  SideAspect* right_;
59  SideAspect* left_;
60  const RealConstants real_;
61  ComputationModel computationModel_;
62 };
63 
64 } // namespace vr
Koordinatensystemunabhängige Daten, Dinge, die innerhalb der Engine sind und defaultwerte.
Definition: RealConstants.h:5
Definition: aspect.h:81
Definition: Engine.h:5
Definition: aspect.h:199
Definition: aspect.h:175
Definition: aspect.h:100
int calcSys_B(double *residuum, const cv::Vec2d &m_R, const cv::Vec2d &m_L, const cv::Vec2d &m_M)
Definition: Engine.cpp:59
Definition: PhotoParams.h:27