1 #ifndef PCL_OUTOFCORE_CAMERA_H_ 2 #define PCL_OUTOFCORE_CAMERA_H_ 9 #include <pcl/outofcore/visualization/object.h> 10 #include <pcl/common/eigen.h> 14 #include <vtkCamera.h> 15 #include <vtkCameraActor.h> 16 #include <vtkPolyData.h> 17 #include <vtkSmartPointer.h> 62 this->display_ = display;
68 for (
int i = 0; i < 24; i++)
69 frustum[i] = frustum_[i];
75 projection_matrix_ = projection_matrix;
81 return projection_matrix_;
87 model_view_matrix_ = model_view_matrix;
93 return model_view_matrix_;
99 return Eigen::Matrix4d (projection_matrix_ * model_view_matrix_);
106 Eigen::Matrix4d inverse_model_view_matrix = model_view_matrix_.inverse ();
107 Eigen::Vector3d position;
108 for (
int i = 0; i < 3; i++)
110 position (i) = inverse_model_view_matrix (i, 3);
119 camera_->SetClippingRange (near_value, far_value);
123 render (vtkRenderer* renderer);
145 Eigen::Matrix4d projection_matrix_;
146 Eigen::Matrix4d model_view_matrix_;
149 double prevFocal_[3];
void setProjectionMatrix(const Eigen::Matrix4d &projection_matrix)
void setModelViewMatrix(const Eigen::Matrix4d &model_view_matrix)
Eigen::Matrix4d getProjectionMatrix()
Eigen::Vector3d getPosition()
void setDisplay(bool display)
vtkSmartPointer< vtkActor > getHullActor() const
vtkSmartPointer< vtkCameraActor > getCameraActor() const
Eigen::Matrix4d getViewProjectionMatrix()
vtkSmartPointer< vtkCamera > getCamera() const
virtual void render(vtkRenderer *renderer)
void getFrustum(double frustum[])
void setClippingRange(float near_value=0.0001f, float far_value=100000.f)
Eigen::Matrix4d getModelViewMatrix()