TechDraw::BSpline Class Reference

#include <Geometry.h>

Public Member Functions

TopoDS_Edge asCircle (bool &isArc)
 
 BSpline (const TopoDS_Edge &e)
 
void getCircleParms (bool &isCircle, double &radius, Base::Vector3d &center, bool &isArc)
 
bool intersectsArc (Base::Vector3d p1, Base::Vector3d p2)
 
bool isCircle (void)
 
bool isLine (void)
 Can this BSpline be represented by a straight line? More...
 
 ~BSpline ()=default
 
- Public Member Functions inherited from TechDraw::BaseGeom
 BaseGeom ()
 
bool closed (void)
 
BaseGeomcopy ()
 
std::string dump ()
 
std::vector< Base::Vector3dfindEndPoints ()
 
std::string getCosmeticTag (void)
 
Base::Vector3d getEndPoint ()
 
Base::Vector3d getMidPoint ()
 
std::vector< Base::Vector3dgetQuads ()
 
Base::Vector3d getStartPoint ()
 
boost::uuids::uuid getTag () const
 
virtual std::string getTagAsString (void) const
 
double minDist (Base::Vector3d p)
 
Base::Vector3d nearPoint (Base::Vector3d p)
 
Base::Vector3d nearPoint (const BaseGeom *p)
 find point on me nearest to p More...
 
virtual void Restore (Base::XMLReader &r)
 
virtual void Save (Base::Writer &w) const
 
void setCosmeticTag (std::string t)
 
void source (int s)
 
int source (void)
 
void sourceIndex (int si)
 
int sourceIndex (void)
 
virtual std::string toString (void) const
 
virtual ~BaseGeom ()=default
 

Public Attributes

bool cw
 Arc is drawn clockwise from startAngle to endAngle if true, counterclockwise if false. More...
 
double endAngle
 
Base::Vector3d endPnt
 
bool isArc
 
Base::Vector3d midPnt
 
std::vector< BezierSegmentsegments
 
double startAngle
 
Base::Vector3d startPnt
 
- Public Attributes inherited from TechDraw::BaseGeom
edgeClass classOfEdge
 
bool cosmetic
 
ExtractionType extractType
 
GeomType geomType
 
bool hlrVisible
 
TopoDS_Edge occEdge
 
int ref3D
 
bool reversed
 

Additional Inherited Members

- Static Public Member Functions inherited from TechDraw::BaseGeom
static BaseGeombaseFactory (TopoDS_Edge edge)
 Convert 1 OCC edge into 1 BaseGeom (static factory method) More...
 
static bool validateEdge (TopoDS_Edge edge)
 
- Protected Member Functions inherited from TechDraw::BaseGeom
void createNewTag ()
 
- Protected Attributes inherited from TechDraw::BaseGeom
std::string cosmeticTag
 
int m_source
 
int m_sourceIndex
 
boost::uuids::uuid tag
 

Constructor & Destructor Documentation

◆ BSpline()

◆ ~BSpline()

TechDraw::BSpline::~BSpline ( )
default

Member Function Documentation

◆ asCircle()

◆ getCircleParms()

void BSpline::getCircleParms ( bool isCircle,
double &  radius,
Base::Vector3d center,
bool isArc 
)

◆ intersectsArc()

◆ isCircle()

◆ isLine()

bool BSpline::isLine ( void  )

Member Data Documentation

◆ cw

bool TechDraw::BSpline::cw

Arc is drawn clockwise from startAngle to endAngle if true, counterclockwise if false.

Referenced by BSpline(), and TechDraw::DrawViewDimension::execute().

◆ endAngle

double TechDraw::BSpline::endAngle

Referenced by BSpline().

◆ endPnt

Base::Vector3d TechDraw::BSpline::endPnt

◆ isArc

bool TechDraw::BSpline::isArc

Referenced by BSpline(), getCircleParms(), and isCircle().

◆ midPnt

Base::Vector3d TechDraw::BSpline::midPnt

◆ segments

std::vector<BezierSegment> TechDraw::BSpline::segments

Referenced by Mod.PartDesign.WizardShaft.Shaft.Shaft::addSegment(), Mod.PartDesign.WizardShaft.ShaftFeature.ShaftFeature::addSegment(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::addSegment(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::buildFromDict(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::clone(), automotive_design.composite_curve::closed_curve(), config_control_design.composite_curve::closed_curve(), ifc2x3.ifccompositecurve::closedcurve(), ifc4.ifccompositecurve::closedcurve(), Mod.PartDesign.WizardShaft.Shaft.Shaft::editConstraint(), Mod.PartDesign.WizardShaft.Shaft.Shaft::equilibrium(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::evaluate(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::findSegment(), TechDrawGui::QGIViewPart::geomToPainterPath(), Mod.PartDesign.WizardShaft.Shaft.Shaft::getConstraint(), Mod.PartDesign.WizardShaft.Shaft.Shaft::getLengthTo(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::index(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::integrate(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::isZero(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::lowervalue(), automotive_design.composite_curve::n_segments(), config_control_design.composite_curve::n_segments(), automotive_design.rectangular_composite_surface::n_u(), config_control_design.rectangular_composite_surface::n_u(), automotive_design.rectangular_composite_surface::n_v(), config_control_design.rectangular_composite_surface::n_v(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::negate(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::negated(), ifc2x3.ifccompositecurve::nsegments(), ifc4.ifccompositecurve::nsegments(), Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::output(), Mod.PartDesign.WizardShaft.Shaft.Shaft::showDiagram(), Mod.PartDesign.WizardShaft.Shaft.Shaft::updateConstraint(), Mod.PartDesign.WizardShaft.Shaft.Shaft::updateSegment(), and Mod.PartDesign.WizardShaft.SegmentFunction.SegmentFunction::value().

◆ startAngle

double TechDraw::BSpline::startAngle

Referenced by BSpline().

◆ startPnt

Base::Vector3d TechDraw::BSpline::startPnt

The documentation for this class was generated from the following files:
  • Sources/FreeCAD/src/Mod/TechDraw/App/Geometry.h
  • Sources/FreeCAD/src/Mod/TechDraw/App/Geometry.cpp