Curve::Conic class reference
[Core module]

Declaration  

#include <Goptical/Curve/Conic>

namespace Goptical {
namespace Curve {
class Conic;
};
};

This class is a member of the Curve namespace.

Inheritance  


 
 

 
 


 
 

 
 


 
 
 

 
 


 
 

 
 


Description  

This class models a rotationally symmetric conic curves with given radius of curvature and deformation coefficient. The later can be provided either as Schwarzschild constant or Eccentricity value.

Fitting can be used to find best fit conic of an other rotationally symmetric curve either with fixed or free deformation parameter.

Sphere and Parabola offer optimized implementations for common special cases.

Members  

See also the full member list section for this class.

Inherited members  

Functions  

Members detail  

Conic(double roc, double sc)  

Creates a conic curve with given radius of curvature and Schwarzschild constant

virtual double derivative(double r) const  

This virtual function implements the derivative pure function declared in the ConicBase base abstract class.

Documentation inherited from base class:

Get curve derivative at specified distance from origin.

  • r: distance from curve origin (0, 0)

double fit(const Rotational &curve, double radius, unsigned int count)  

Adjust radius of curvature _and_ deformation to best fit given curve

Parameters list:

  • curve: Curve to fit
  • radius: Maximum radius used to get sample points
  • count: Number of sample points to use

virtual bool intersect(Math::Vector3 &point, const Math::VectorPair3 &ray) const  

This virtual function implements the intersect pure function declared in the ConicBase base abstract class.

Documentation inherited from base class:

Get intersection point between curve and 3d ray. Return false if no intersection occurred

virtual double sagitta(double r) const  

This virtual function implements the sagitta pure function declared in the ConicBase base abstract class.

Documentation inherited from base class:

Get curve sagitta at specified distance from origin.

  • r: distance from curve origin (0, 0)

void set_eccentricity(double e)  

Set eccentricity

void set_schwarzschild(double sc)  

Set Schwarzschild constant

Valid XHTML 1.0 StrictGenerated by diaxen on Sun Jan 8 00:47:23 2012 using MkDoc