8 #include <pcl/outofcore/visualization/object.h> 9 #include <pcl/common/eigen.h> 15 #include <vtkCamera.h> 16 #include <vtkCameraActor.h> 17 #include <vtkPolyData.h> 18 #include <vtkSmartPointer.h> 63 this->display_ = display;
69 for (
int i = 0; i < 24; i++)
70 frustum[i] = frustum_[i];
76 projection_matrix_ = projection_matrix;
82 return projection_matrix_;
88 model_view_matrix_ = model_view_matrix;
94 return model_view_matrix_;
100 return Eigen::Matrix4d (projection_matrix_ * model_view_matrix_);
107 Eigen::Matrix4d inverse_model_view_matrix = model_view_matrix_.inverse ();
108 Eigen::Vector3d position;
109 for (
int i = 0; i < 3; i++)
111 position (i) = inverse_model_view_matrix (i, 3);
120 camera_->SetClippingRange (near_value, far_value);
124 render (vtkRenderer* renderer)
override;
149 Eigen::Matrix4d projection_matrix_;
150 Eigen::Matrix4d model_view_matrix_;
153 double prevFocal_[3];
void setProjectionMatrix(const Eigen::Matrix4d &projection_matrix)
Defines functions, macros and traits for allocating and using memory.
void setModelViewMatrix(const Eigen::Matrix4d &model_view_matrix)
Eigen::Matrix4d getProjectionMatrix()
Eigen::Vector3d getPosition()
void setDisplay(bool display)
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
vtkSmartPointer< vtkActor > getHullActor() const
vtkSmartPointer< vtkCameraActor > getCameraActor() const
Eigen::Matrix4d getViewProjectionMatrix()
void render(vtkRenderer *renderer) override
vtkSmartPointer< vtkCamera > getCamera() const
void getFrustum(double frustum[])
void setClippingRange(float near_value=0.0001f, float far_value=100000.f)
Eigen::Matrix4d getModelViewMatrix()
Defines all the PCL and non-PCL macros used.