GCS::Hyperbola Class Reference

#include <Geo.h>

Public Member Functions

DeriVector2 CalculateNormal (const Point &p, const double *derivparam=nullptr) const override
 
virtual HyperbolaCopy () override
 
virtual double getRadMaj () const override
 
virtual double getRadMaj (const DeriVector2 &center, const DeriVector2 &f1, double b, double db, double &ret_dRadMaj) const override
 
virtual double getRadMaj (double *derivparam, double &ret_dRadMaj) const override
 
 Hyperbola ()
 
virtual int PushOwnParams (VEC_pD &pvec) override
 
virtual void ReconstructOnNewPvec (VEC_pD &pvec, int &cnt) override
 
virtual DeriVector2 Value (double u, double du, const double *derivparam=nullptr) const override
 Value: returns point (vector) given the value of parameter. More...
 
virtual ~Hyperbola ()
 
- Public Member Functions inherited from GCS::MajorRadiusConic
virtual double getRadMaj () const =0
 
virtual double getRadMaj (const DeriVector2 &center, const DeriVector2 &f1, double b, double db, double &ret_dRadMaj) const =0
 
virtual double getRadMaj (double *derivparam, double &ret_dRadMaj) const =0
 
virtual ~MajorRadiusConic ()
 
- Public Member Functions inherited from GCS::Curve
virtual DeriVector2 CalculateNormal (const Point &p, const double *derivparam=nullptr) const =0
 
virtual CurveCopy ()=0
 
virtual int PushOwnParams (VEC_pD &pvec)=0
 
virtual void ReconstructOnNewPvec (VEC_pD &pvec, int &cnt)=0
 
virtual DeriVector2 Value (double u, double du, const double *derivparam=nullptr) const
 Value: returns point (vector) given the value of parameter. More...
 
virtual ~Curve ()
 

Public Attributes

Point center
 
Point focus1
 
double * radmin
 

Constructor & Destructor Documentation

◆ Hyperbola()

GCS::Hyperbola::Hyperbola ( )

References radmin.

Referenced by Copy().

◆ ~Hyperbola()

virtual GCS::Hyperbola::~Hyperbola ( )
virtual

Member Function Documentation

◆ CalculateNormal()

DeriVector2 GCS::Hyperbola::CalculateNormal ( const Point p,
const double *  derivparam = nullptr 
) const
overridevirtual

◆ Copy()

Hyperbola * GCS::Hyperbola::Copy ( void  )
overridevirtual

Implements GCS::Curve.

Reimplemented in GCS::ArcOfHyperbola.

References Hyperbola().

◆ getRadMaj() [1/3]

double GCS::Hyperbola::getRadMaj ( ) const
overridevirtual

Implements GCS::MajorRadiusConic.

References getRadMaj().

Referenced by getRadMaj(), and Value().

◆ getRadMaj() [2/3]

double GCS::Hyperbola::getRadMaj ( const DeriVector2 center,
const DeriVector2 f1,
double  b,
double  db,
double &  ret_dRadMaj 
) const
overridevirtual

◆ getRadMaj() [3/3]

double GCS::Hyperbola::getRadMaj ( double *  derivparam,
double &  ret_dRadMaj 
) const
overridevirtual

Implements GCS::MajorRadiusConic.

References center, focus1, getRadMaj(), and radmin.

◆ PushOwnParams()

◆ ReconstructOnNewPvec()

void GCS::Hyperbola::ReconstructOnNewPvec ( VEC_pD pvec,
int cnt 
)
overridevirtual

◆ Value()

DeriVector2 GCS::Hyperbola::Value ( double  u,
double  du,
const double *  derivparam = nullptr 
) const
overridevirtual

Value: returns point (vector) given the value of parameter.

Parameters
uvalue of parameter
duderivative of parameter by derivparam
derivparampointer to sketch parameter to calculate the derivative for
Returns

Reimplemented from GCS::Curve.

References center, focus1, GCS::DeriVector2::getNormalized(), getRadMaj(), GCS::DeriVector2::multD(), radmin, GCS::DeriVector2::rotate90ccw(), GCS::DeriVector2::subtr(), and GCS::DeriVector2::sum().

Member Data Documentation

◆ center

Point GCS::Hyperbola::center

Referenced by drafttaskpanels.task_circulararray.TaskPanelCircularArray::accept(), drafttaskpanels.task_polararray.TaskPanelPolarArray::accept(), draftguitools.gui_arcs.Arc::action(), draftguitools.gui_dimensions.Dimension::action(), draftguitools.gui_offset.Offset::action(), draftguitools.gui_polygons.Polygon::action(), draftguitools.gui_rotate.Rotate::build_copy_subelements_command(), draftguitools.gui_scale.Scale::build_copy_subelements_command(), draftguitools.gui_rotate.Rotate::build_rotate_subelements_command(), draftguitools.gui_scale.Scale::build_scale_subelements_command(), CalculateNormal(), draftguitools.gui_dimensions.Dimension::create_angle_dimension(), drafttaskpanels.task_circulararray.TaskPanelCircularArray::create_object(), drafttaskpanels.task_polararray.TaskPanelPolarArray::create_object(), draftguitools.gui_arcs.Arc::drawArc(), draftguitools.gui_polygons.Polygon::drawPolygon(), PathScripts.PathDressupAxisMap.ObjectDressup::execute(), getRadMaj(), draftguitools.gui_rotate.Rotate::handle_mouse_move_event(), draftguitools.gui_arcs.Arc::numericInput(), draftguitools.gui_polygons.Polygon::numericInput(), draftguitools.gui_rotate.Rotate::numericInput(), draftguitools.gui_arcs.Arc::numericRadius(), draftguitools.gui_polygons.Polygon::numericRadius(), PathScripts.PathDressupAxisMap.ObjectDressup::onChanged(), drafttaskpanels.task_circulararray.TaskPanelCircularArray::print_messages(), drafttaskpanels.task_polararray.TaskPanelPolarArray::print_messages(), PushOwnParams(), ReconstructOnNewPvec(), drafttaskpanels.task_circulararray.TaskPanelCircularArray::reset_point(), drafttaskpanels.task_polararray.TaskPanelPolarArray::reset_point(), draftguitools.gui_rotate.Rotate::rotate_object(), draftguitools.gui_scale.Scale::scale_object(), draftguitools.gui_rotate.Rotate::set_center(), draftguitools.gui_rotate.Rotate::set_ghosts(), draftguitools.gui_rotate.Rotate::set_rotation_angle(), and Value().

◆ focus1

Point GCS::Hyperbola::focus1

◆ radmin


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