17 #include "org_custusx_registration_method_bronchoscopy_Export.h" 23 typedef std::vector< Eigen::Matrix4d >
M4Vector;
26 class org_custusx_registration_method_bronchoscopy_EXPORT
BranchList 28 std::vector<BranchPtr> mBranches;
34 void deleteAllBranches();
35 std::vector<BranchPtr> getBranches();
36 void findBranchesInCenterline(Eigen::MatrixXd positions_r);
37 void selectGenerations(
int maxGeneration);
38 void calculateOrientations();
39 void smoothOrientations();
40 void interpolateBranchPositions(
int interpolationFactor);
41 void smoothBranchPositions(
int controlPointDistance);
42 BranchListPtr removePositionsForLocalRegistration(Eigen::MatrixXd trackingPositions,
double maxDistance);
43 vtkPolyDataPtr createVtkPolyDataFromBranches(
bool fullyConnected =
false,
bool straightBranches =
false)
const;
46 std::pair<Eigen::MatrixXd,Eigen::MatrixXd >
findConnectedPointsInCT(
int startIndex , Eigen::MatrixXd positionsNotUsed);
47 Eigen::MatrixXd
sortMatrix(
int rowNumber, Eigen::MatrixXd matrix);
48 Eigen::MatrixXd
eraseCol(
int removeIndex, Eigen::MatrixXd positions);
49 std::pair<Eigen::MatrixXd::Index, double>
dsearch(Eigen::Vector3d p, Eigen::MatrixXd positions);
50 std::pair<std::vector<Eigen::MatrixXd::Index>, Eigen::VectorXd >
dsearchn(Eigen::MatrixXd p1, Eigen::MatrixXd p2);
std::pair< Eigen::MatrixXd, Eigen::MatrixXd > findConnectedPointsInCT(int startIndex, Eigen::MatrixXd positionsNotUsed)
boost::shared_ptr< class BranchList > BranchListPtr
boost::shared_ptr< class Branch > BranchPtr
std::pair< Eigen::MatrixXd::Index, double > dsearch(Eigen::Vector3d p, Eigen::MatrixXd positions)
vtkSmartPointer< vtkPolyData > vtkPolyDataPtr
std::pair< std::vector< Eigen::MatrixXd::Index >, Eigen::VectorXd > dsearchn(Eigen::MatrixXd p1, Eigen::MatrixXd p2)
Eigen::MatrixXd eraseCol(int removeIndex, Eigen::MatrixXd positions)
Eigen::MatrixXd sortMatrix(int rowNumber, Eigen::MatrixXd matrix)
std::vector< Eigen::Matrix4d > M4Vector
Namespace for all CustusX production code.