38 #ifndef PCL_INTERSECTIONS_H_
39 #define PCL_INTERSECTIONS_H_
41 #include <pcl/ModelCoefficients.h>
61 PCL_EXPORTS
inline bool
63 const Eigen::VectorXf &line_b,
64 Eigen::Vector4f &point,
65 double sqr_eps = 1e-4);
75 PCL_EXPORTS
inline bool
78 Eigen::Vector4f &point,
79 double sqr_eps = 1e-4);
90 PCL_EXPORTS
template <
typename Scalar>
bool
92 const Eigen::Matrix<Scalar, 4, 1> &plane_b,
93 Eigen::Matrix<Scalar, Eigen::Dynamic, 1> &line,
94 double angular_tolerance = 0.1);
96 PCL_EXPORTS
inline bool
98 const Eigen::Vector4f &plane_b,
99 Eigen::VectorXf &line,
100 double angular_tolerance = 0.1)
102 return (planeWithPlaneIntersection<float> (plane_a, plane_b, line, angular_tolerance));
105 PCL_EXPORTS
inline bool
107 const Eigen::Vector4d &plane_b,
108 Eigen::VectorXd &line,
109 double angular_tolerance = 0.1)
111 return (planeWithPlaneIntersection<double> (plane_a, plane_b, line, angular_tolerance));
125 PCL_EXPORTS
template <
typename Scalar>
bool
127 const Eigen::Matrix<Scalar, 4, 1> &plane_b,
128 const Eigen::Matrix<Scalar, 4, 1> &plane_c,
129 Eigen::Matrix<Scalar, 3, 1> &intersection_point,
130 double determinant_tolerance = 1e-6);
133 PCL_EXPORTS
inline bool
135 const Eigen::Vector4f &plane_b,
136 const Eigen::Vector4f &plane_c,
137 Eigen::Vector3f &intersection_point,
138 double determinant_tolerance = 1e-6)
140 return (threePlanesIntersection<float> (plane_a, plane_b, plane_c,
141 intersection_point, determinant_tolerance));
144 PCL_EXPORTS
inline bool
146 const Eigen::Vector4d &plane_b,
147 const Eigen::Vector4d &plane_c,
148 Eigen::Vector3d &intersection_point,
149 double determinant_tolerance = 1e-6)
151 return (threePlanesIntersection<double> (plane_a, plane_b, plane_c,
152 intersection_point, determinant_tolerance));
158 #include <pcl/common/impl/intersections.hpp>
160 #endif //#ifndef PCL_INTERSECTIONS_H_