ldpk
Public Member Functions | List of all members
tde4_ld_plugin Class Referenceabstract

Lens Distortion Plugin Base Class. More...

#include <tde4_ld_plugin.h>

Inheritance diagram for tde4_ld_plugin:
Inheritance graph
[legend]

Public Member Functions

const char * getVersionString () const
 
virtual bool getModelName (char *model)=0
 returns a name for the model as to show up in the GUI (maximum length of "name": 100 bytes)...
 
virtual bool getNumParameters (int &n)=0
 returns the number of plugin parameters...
 
virtual bool getParameterName (int i, char *identifier)=0
 returns "identifier" name of parameter "i" (maximum length of "identifier": 100 bytes)...
 
virtual bool getParameterType (const char *identifier, tde4_ldp_ptype &type)=0
 returns type of given parameter... The method should return false, if the parameter addressed by identifier does not exist.
 
virtual bool getParameterDefaultValue (const char *identifier, double &v)=0
 returns default value for given parameter (maximum length of "char *v": 1000 bytes)......
 
virtual bool getParameterDefaultValue (const char *identifier, char *v)
 
virtual bool getParameterDefaultValue (const char *identifier, int &v)
 
virtual bool getParameterDefaultValue (const char *identifier, bool &v)
 
virtual bool getParameterRange (const char *identifier, double &a, double &b)=0
 returns range for adjustable double parameters...
 
virtual bool setParameterValue (const char *identifier, double v)=0
 set parameter values... parameters predefined by 3DE4: "tde4_focal_length_cm", "tde4_filmback_width_cm", "tde4_filmback_height_cm", "tde4_lens_center_offset_x_cm", "tde4_lens_center_offset_y_cm", "tde4_pixel_aspect", "tde4_custom_focus_distance_cm"
 
virtual bool setParameterValue (const char *identifier, const char *v)
 
virtual bool setParameterValue (const char *identifier, int v)
 
virtual bool setParameterValue (const char *identifier, bool v)
 
virtual bool initializeParameters ()=0
 prepare the current set of parameters...
 
virtual bool undistort (double x0, double y0, double &x1, double &y1)=0
 warp/unwarp 2D points...
 
virtual bool distort (double x0, double y0, double &x1, double &y1)=0
 
virtual bool distort (double x0, double y0, double x1_start, double y1_start, double &x1, double &y1)
 potentially more efficient function which uses initial values...
 
virtual bool providesParameterDerivatives ()
 parameter derivatives to be used for distortion grid controls' matrix calculation routine...
 
virtual bool calcParameterDerivatives (double x, double y, int num_parameters, double *dx_dy)
 dx_dy is an array with 2 * num_parameters elements (x- and y- component for each of n derivatives)
 
bool getJacobianMatrixDQ (double x0, double y0, double &m00, double &m01, double &m10, double &m11)
 calculate the Jacobian matrix of the undistort()-Method by means of difference quotients. This is the default implementation. Also use it for testing your own implementation of getJacobianMatrix().
 
virtual bool getJacobianMatrix (double x0, double y0, double &m00, double &m01, double &m10, double &m11)
 calculate the Jacobian matrix of the undistort()-Method. Overwrite this, if you know the Jacobian for your own lens distortion model.
 
virtual bool getTwistVector (double x0, double y0, double &t0, double &t1)
 calculate the mixed derivatives ("twist vector") of the undistort()-Method. Overwrite this, if you know the twist vector for your own lens distortion model.
 
virtual void getBoundingBoxUndistort (double xa_in, double ya_in, double xb_in, double yb_in, double &xa_out, double &ya_out, double &xb_out, double &yb_out, int nx=32, int ny=32)
 Iterate around the specified box, undistort the points and compute the bounding box.
 
virtual void getBoundingBoxDistort (double xa_in, double ya_in, double xb_in, double yb_in, double &xa_out, double &ya_out, double &xb_out, double &yb_out, int nx=32, int ny=32)
 Iterate around the specified box, distort the points and compute the bounding box.
 

Detailed Description

Lens Distortion Plugin Base Class.


The documentation for this class was generated from the following file: