QCAD
Open Source 2D CAD
DL_HatchEdgeData Struct Reference

Hatch edge data. More...

#include <dl_entities.h>

Public Member Functions

 DL_HatchEdgeData ()
 Default constructor. More...
 
 DL_HatchEdgeData (double x1, double y1, double x2, double y2)
 Constructor for a line edge. More...
 
 DL_HatchEdgeData (double cx, double cy, double radius, double angle1, double angle2, bool ccw)
 Constructor for an arc edge. More...
 
 DL_HatchEdgeData (double cx, double cy, double mx, double my, double ratio, double angle1, double angle2, bool ccw)
 Constructor for an ellipse arc edge. More...
 
 DL_HatchEdgeData (unsigned int degree, bool rational, bool periodic, unsigned int nKnots, unsigned int nControl, unsigned int nFit, const std::vector< double > &knots, const std::vector< std::vector< double > > &controlPoints, const std::vector< std::vector< double > > &fitPoints, const std::vector< double > &weights, double startTangentX, double startTangentY, double endTangentX, double endTangentY)
 Constructor for a spline edge. More...
 

Public Attributes

double angle1
 
double angle2
 
bool ccw
 
std::vector< std::vector< double > > controlPoints
 
double cx
 
double cy
 
bool defined
 Set to true if this edge is fully defined. More...
 
unsigned int degree
 
double endTangentX
 
double endTangentY
 
std::vector< std::vector< double > > fitPoints
 
std::vector< double > knots
 
double mx
 
double my
 
unsigned int nControl
 
unsigned int nFit
 
unsigned int nKnots
 
bool periodic
 
double radius
 
double ratio
 
bool rational
 
double startTangentX
 
double startTangentY
 
int type
 Edge type. More...
 
std::vector< std::vector< double > > vertices
 Polyline boundary vertices (x y [bulge]) More...
 
std::vector< double > weights
 
double x1
 
double x2
 
double y1
 
double y2
 

Detailed Description

Hatch edge data.

Constructor & Destructor Documentation

DL_HatchEdgeData::DL_HatchEdgeData ( )
inline

Default constructor.

DL_HatchEdgeData::DL_HatchEdgeData ( double  x1,
double  y1,
double  x2,
double  y2 
)
inline

Constructor for a line edge.

Parameters: see member variables.

DL_HatchEdgeData::DL_HatchEdgeData ( double  cx,
double  cy,
double  radius,
double  angle1,
double  angle2,
bool  ccw 
)
inline

Constructor for an arc edge.

Parameters: see member variables.

DL_HatchEdgeData::DL_HatchEdgeData ( double  cx,
double  cy,
double  mx,
double  my,
double  ratio,
double  angle1,
double  angle2,
bool  ccw 
)
inline

Constructor for an ellipse arc edge.

Parameters: see member variables.

DL_HatchEdgeData::DL_HatchEdgeData ( unsigned int  degree,
bool  rational,
bool  periodic,
unsigned int  nKnots,
unsigned int  nControl,
unsigned int  nFit,
const std::vector< double > &  knots,
const std::vector< std::vector< double > > &  controlPoints,
const std::vector< std::vector< double > > &  fitPoints,
const std::vector< double > &  weights,
double  startTangentX,
double  startTangentY,
double  endTangentX,
double  endTangentY 
)
inline

Constructor for a spline edge.

Parameters: see member variables.

Member Data Documentation

double DL_HatchEdgeData::angle1

Start angle of arc or ellipse arc.

double DL_HatchEdgeData::angle2

End angle of arc or ellipse arc.

bool DL_HatchEdgeData::ccw

Counterclockwise flag for arc or ellipse arc.

std::vector<std::vector<double> > DL_HatchEdgeData::controlPoints
double DL_HatchEdgeData::cx

Center point of arc or ellipse arc (X).

double DL_HatchEdgeData::cy

Center point of arc or ellipse arc (Y).

bool DL_HatchEdgeData::defined

Set to true if this edge is fully defined.

unsigned int DL_HatchEdgeData::degree

Spline degree

double DL_HatchEdgeData::endTangentX
double DL_HatchEdgeData::endTangentY
std::vector<std::vector<double> > DL_HatchEdgeData::fitPoints
std::vector<double> DL_HatchEdgeData::knots
double DL_HatchEdgeData::mx

Major axis end point (X).

double DL_HatchEdgeData::my

Major axis end point (Y).

unsigned int DL_HatchEdgeData::nControl

Number of control points.

unsigned int DL_HatchEdgeData::nFit

Number of fit points.

unsigned int DL_HatchEdgeData::nKnots

Number of knots.

bool DL_HatchEdgeData::periodic
double DL_HatchEdgeData::radius

Arc radius.

double DL_HatchEdgeData::ratio

Axis ratio

bool DL_HatchEdgeData::rational
double DL_HatchEdgeData::startTangentX
double DL_HatchEdgeData::startTangentY
int DL_HatchEdgeData::type

Edge type.

1=line, 2=arc, 3=elliptic arc, 4=spline.

std::vector<std::vector<double> > DL_HatchEdgeData::vertices

Polyline boundary vertices (x y [bulge])

std::vector<double> DL_HatchEdgeData::weights
double DL_HatchEdgeData::x1

Start point (X).

double DL_HatchEdgeData::x2

End point (X).

double DL_HatchEdgeData::y1

Start point (Y).

double DL_HatchEdgeData::y2

End point (Y).


The documentation for this struct was generated from the following file: