18 #ifndef RESECTIONSOLVER_H 19 #define RESECTIONSOLVER_H 25 #include <Eigen/Dense> 26 #include <boost/shared_ptr.hpp> 33 unsigned int solve(
const Eigen::Vector2d& base_A,
const Eigen::Vector2d& base_B,
const Eigen::Vector2d& base_C);
34 Eigen::Matrix4d
calculateTransformationMatrix(
const Eigen::Vector2d& base_A,
const Eigen::Vector2d& base_B,
const Eigen::Vector2d& base_C,
const Eigen::Vector3d& solution);
35 std::vector<Eigen::Vector3d, Eigen::aligned_allocator<Eigen::Vector3d> >
solutions;
40 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
50 Eigen::Vector3d
solve_for_top(
const Eigen::Vector2d& base_A,
const Eigen::Vector2d& base_B,
const Eigen::Vector2d& base_C,
double length_AS,
double length_BS,
double length_CS);
54 #endif // RESECTIONSOLVER_H boost::shared_ptr< Calibration_Object > calibrationObject
unsigned int solve_for_lengths_(double side_A, double side_B, double side_C)
int solve_for_lengths(double side_A, double side_B, double side_C)
std::vector< Eigen::Vector3d, Eigen::aligned_allocator< Eigen::Vector3d > > solutions
Eigen::Matrix4d calculateTransformationMatrix(const Eigen::Vector2d &base_A, const Eigen::Vector2d &base_B, const Eigen::Vector2d &base_C, const Eigen::Vector3d &solution)
boost::shared_ptr< FeasibilityChecker > feasibilityChecker
unsigned int solve(const Eigen::Vector2d &base_A, const Eigen::Vector2d &base_B, const Eigen::Vector2d &base_C)
ResectionSolver(boost::shared_ptr< Calibration_Object > calibrationObject, boost::shared_ptr< FeasibilityChecker > feasibilityChecker)
std::vector< double > solutions_a
std::vector< double > solutions_b
Eigen::Vector3d solve_for_top(const Eigen::Vector2d &base_A, const Eigen::Vector2d &base_B, const Eigen::Vector2d &base_C, double length_AS, double length_BS, double length_CS)
std::vector< double > solutions_c