67 float left,
float right,
float bottom,
float top,
float znear,
81 float x,
float y,
float z,
float& proj_u,
float& proj_v,
82 float& proj_z_depth)
const;
87 float x,
float y,
float z,
float& proj_u_px,
float& proj_v_px,
88 float& proj_depth)
const;
TRenderMatrices()=default
mrpt::math::TPoint3D up
Up vector of the camera.
void computeProjectionMatrix(float zmin, float zmax)
Uses is_projective , vw,vh, etc.
mrpt::math::CMatrixFloat44 pmv_matrix
Result of p_matrix * mv_matrix.
void projectPointPixels(float x, float y, float z, float &proj_u_px, float &proj_v_px, float &proj_depth) const
Projects a point from global world coordinates into (u,v) pixel coordinates.
void applyLookAt()
Updates the current p_matrix such that it "looks at" pointing, with up vector "up".
mrpt::math::CMatrixFloat44 mv_matrix
Model-view matrix.
Rendering state related to the projection and model-view matrices.
void computeOrthoProjectionMatrix(float left, float right, float bottom, float top, float znear, float zfar)
Especial case for custom parameters of Orthographic projection.
double azimuth
Camera elev & azimuth, in radians.
size_t viewport_width
In pixels.
mrpt::math::TPoint3D eye
The camera is here.
void projectPoint(float x, float y, float z, float &proj_u, float &proj_v, float &proj_z_depth) const
Computes the normalized coordinates (range=[0,1]) on the current rendering viewport of a point with l...
mrpt::math::TPoint3D pointing
The camera points to here.
The namespace for 3D scene representation and rendering.
double FOV
Vertical FOV in degrees.
mrpt::math::CMatrixFloat44 p_matrix
Projection matrix, computed by renderNormalScene() from all the parameters above. ...
bool is_projective
true: projective, false: ortho