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  )

Can this BSpline be represented by a straight line?

References TechDraw::DrawUtil::fpCompare(), TechDraw::DrawUtil::gpPnt2V3(), and TechDraw::BaseGeom::occEdge.

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

◆ 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:
  • src/Mod/TechDraw/App/Geometry.h
  • src/Mod/TechDraw/App/Geometry.cpp