Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037 #ifndef MOVEIT_MESH_FILTER_STEREO_CAMERA_MODEL_
00038 #define MOVEIT_MESH_FILTER_STEREO_CAMERA_MODEL_
00039
00040 #include <moveit/mesh_filter/sensor_model.h>
00041 #include <string>
00042
00043 namespace mesh_filter
00044 {
00049 class StereoCameraModel : public SensorModel
00050 {
00051 public:
00056 class Parameters : public SensorModel::Parameters
00057 {
00058 public:
00072 Parameters (unsigned width, unsigned height,
00073 float near_clipping_plane_distance, float far_clipping_plane_distance,
00074 float fx, float fy, float cx, float cy, float base_line, float disparity_resolution);
00076 ~Parameters ();
00077
00082 SensorModel::Parameters* clone () const;
00083
00088 void setRenderParameters (GLRenderer& renderer) const;
00089
00094 void setFilterParameters (GLRenderer& renderer) const;
00095
00103 void setCameraParameters (float fx, float fy, float cx, float cy);
00104
00109 void setBaseline (float base_line);
00110
00115 void setDisparityResolution (float disparity_resolution);
00116
00121 const Eigen::Vector3f& getPaddingCoefficients () const;
00122 private:
00124 float fx_;
00125
00127 float fy_;
00128
00130 float cx_;
00131
00133 float cy_;
00134
00136 float base_line_;
00137
00139 float disparity_resolution_;
00140
00145 const Eigen::Vector3f padding_coefficients_;
00146 };
00147
00149 static const StereoCameraModel::Parameters& RegisteredPSDKParams;
00150
00152 static const std::string renderVertexShaderSource;
00153
00155 static const std::string renderFragmentShaderSource;
00156
00158 static const std::string filterVertexShaderSource;
00159
00161 static const std::string filterFragmentShaderSource;
00162 };
00163 }
00164 #endif