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];
Eigen::Vector3d getPosition()
void setProjectionMatrix(const Eigen::Matrix4d &projection_matrix)
void setClippingRange(float near_value=0.0001f, float far_value=100000.f)
void setModelViewMatrix(const Eigen::Matrix4d &model_view_matrix)
vtkSmartPointer< vtkCamera > getCamera() const
virtual void render(vtkRenderer *renderer)
Eigen::Matrix4d getProjectionMatrix()
void getFrustum(double frustum[])
vtkSmartPointer< vtkActor > getHullActor() const
Eigen::Matrix4d getViewProjectionMatrix()
void setDisplay(bool display)
Eigen::Matrix4d getModelViewMatrix()
vtkSmartPointer< vtkCameraActor > getCameraActor() const