37 #ifndef PCL_PCL_VISUALIZER_COMMON_H_
38 #define PCL_PCL_VISUALIZER_COMMON_H_
41 #pragma GCC system_header
44 #include <pcl/pcl_macros.h>
45 #include <pcl/visualization/eigen.h>
46 #include <vtkMatrix4x4.h>
52 namespace visualization
62 getRandomColors (
double &r,
double &g,
double &b,
double min = 0.2,
double max = 2.8);
72 PCL_EXPORTS Eigen::Matrix4d
75 PCL_EXPORTS Eigen::Vector2i
76 worldToView (
const Eigen::Vector4d &world_pt,
const Eigen::Matrix4d &view_projection_matrix,
int width,
int height);
79 getViewFrustum (
const Eigen::Matrix4d &view_projection_matrix,
double planes[24]);
89 cullFrustum (
double planes[24],
const Eigen::Vector3d &min_bb,
const Eigen::Vector3d &max_bb);
92 viewScreenArea (
const Eigen::Vector3d &eye,
const Eigen::Vector3d &min_bb,
const Eigen::Vector3d &max_bb,
const Eigen::Matrix4d &view_projection_matrix,
int width,
int height);
147 double window_size[2];
148 double window_pos[2];
155 computeViewMatrix (Eigen::Matrix4d& view_mat)
const;
161 computeProjectionMatrix (Eigen::Matrix4d& proj)
const;
170 template<
typename Po
intT>
void
171 cvtWindowCoordinates (
const PointT& pt, Eigen::Vector4d& window_cord)
const;
183 template<
typename Po
intT>
void
184 cvtWindowCoordinates (
const PointT& pt, Eigen::Vector4d& window_cord,
const Eigen::Matrix4d& composite_mat)
const;
189 #include <pcl/visualization/common/impl/common.hpp>