GCS::Circle Class Reference

#include <Geo.h>

Public Member Functions

DeriVector2 CalculateNormal (const Point &p, const double *derivparam=nullptr) const override
 
 Circle ()
 
virtual CircleCopy () override
 
virtual int PushOwnParams (VEC_pD &pvec) override
 
virtual void ReconstructOnNewPvec (VEC_pD &pvec, int &cnt) override
 
DeriVector2 Value (double u, double du, const double *derivparam=nullptr) const override
 Value: returns point (vector) given the value of parameter. More...
 
virtual ~Circle ()
 
- 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
 
double * rad
 

Constructor & Destructor Documentation

◆ Circle()

GCS::Circle::Circle ( )

References rad.

Referenced by Copy().

◆ ~Circle()

virtual GCS::Circle::~Circle ( )
virtual

Member Function Documentation

◆ CalculateNormal()

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

Implements GCS::Curve.

References center, and GCS::DeriVector2::subtr().

◆ Copy()

Circle * Circle::Copy ( void  )
overridevirtual

Implements GCS::Curve.

Reimplemented in GCS::Arc.

References Circle().

◆ PushOwnParams()

int Circle::PushOwnParams ( VEC_pD pvec)
overridevirtual

Implements GCS::Curve.

Reimplemented in GCS::Arc.

References center, rad, GCS::Point::x, and GCS::Point::y.

Referenced by GCS::Arc::PushOwnParams().

◆ ReconstructOnNewPvec()

void Circle::ReconstructOnNewPvec ( VEC_pD pvec,
int cnt 
)
overridevirtual

Implements GCS::Curve.

Reimplemented in GCS::Arc.

References center, rad, GCS::Point::x, and GCS::Point::y.

Referenced by GCS::Arc::ReconstructOnNewPvec().

◆ Value()

DeriVector2 Circle::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, GCS::DeriVector2::multD(), rad, GCS::DeriVector2::rotate90ccw(), and GCS::DeriVector2::sum().

Member Data Documentation

◆ center

Point GCS::Circle::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(), Sketcher::Sketch::addCircle(), GCS::System::addConstraintTangent(), 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(), 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().

◆ rad


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