#include <Goptical/Curve/Zernike>
namespace Goptical {
namespace Curve {
class Zernike;
};
};
This class is a member of the Curve namespace.
This class enables use of zernikes polynomials to define a surface curve. Zernikes terms can be enabled and disabled individually.
Fitting can be used to get best fit Zernike polynomials coefficients of an other curve.
This implementation uses Zernike polynomials set as described in ISO standard 10110-5.
Based on Zernikes pages by James C Wyant and Michael Koch. http://www.optics.arizona.edu/jcwyant/Zernikes/ZernikePolynomials.htm and http://www.astro-electronic.de/faq2.htm
See also the full member list section for this class.
Create a Zernike curve defined over the given circle radius.
Create a Zernike curve defined over the given circle radius and initialize coefficients from table.
This virtual function overrides the derivative virtual function defined in the Base base abstract class.
Documentation inherited from base class:
Get curve x and y derivative (gradient) at specified point
Compute all zernike coefficient to best fit the given curve. RMS difference is returned. The specified distribution is used to choose sampling points on curve. Terms state is adjusted according to current threshold
Get coefficient associated with zernike term n
Get Zernike circle radius
Get current term enable state
This virtual function implements the sagitta pure function declared in the Base base abstract class.
Documentation inherited from base class:
Get curve sagitta at specified point
Set coefficient associated with zernike term n and enable term according to current threshold. See set_coefficients_threshold()
Set coefficients unit scale factor. default is 1 (1 mm).
Set new coefficient threshold and adjust all term states (enabled/disabled) depending on new threshold. Term with coefficient absolute value below the specified threshold will be disabled. Disabling useless terms improve performance. Default threshold is 10^-10.
Set Zernike circle radius
This functions must be used to enable/disable a zernike term without changing its coefficient
Number of implemented zernike polynomials
Evaluate zernike polynomial n
Evaluate x and y derivatives of zernike polynomial n
Valid XHTML 1.0 StrictGenerated by diaxen on Sun Jan 8 00:47:23 2012 using MkDoc