DXF path entity base class. More...
#include <mydxfentities.hpp>

Public Member Functions | |
virtual | ~MyDXFPathEntity () |
Virtual destructor. More... | |
virtual Vec3D | start (void) const =0 |
Get start point of path entity. More... | |
virtual Vec3D | end (void) const =0 |
Get end point of path entity. More... | |
virtual void | set_start (const Vec3D &s)=0 |
Set start point of path entity. More... | |
virtual void | set_end (const Vec3D &e)=0 |
Set end point of path entity. More... | |
virtual int | ray_cross (double x, double y) const =0 |
Check for ray crossing. More... | |
![]() | |
virtual | ~MyDXFEntity () |
Virtual destructor. More... | |
virtual MyDXFEntity * | copy (void) const =0 |
Get a new copy of entity. More... | |
virtual void | explode (class MyDXFEntities *ent, MyDXFFile *dxf, const Transformation *t) const =0 |
Explode into entities. More... | |
virtual void | write (class MyDXFFile *dxf, std::ofstream &ostr)=0 |
Write dxf file to stream. More... | |
virtual void | scale (class MyDXFFile *dxf, double s)=0 |
Scale entity by factor s. More... | |
virtual void | translate (class MyDXFFile *dxf, const Vec3D &dx)=0 |
Translate entity by dx. More... | |
virtual void | rotate_z (class MyDXFFile *dxf, double a)=0 |
Rotate entity around origin. More... | |
void | set_layer (const std::string &layer) |
Set layer. More... | |
std::string | get_layer (void) const |
Get layer. More... | |
virtual EntityType | get_type (void) const =0 |
Get entity type. More... | |
void | set_handle (const std::string &handle) |
Set entity handle. More... | |
std::string | get_handle (void) const |
Get entity handle. More... | |
virtual void | plot (const class MyDXFFile *dxf, cairo_t *cairo, const Transformation *t, const double range[4]) const =0 |
Plot entity with cairo. More... | |
virtual void | get_bbox (Vec3D &min, Vec3D &max, const class MyDXFFile *dxf, const Transformation *t) const =0 |
Return bounding box of entity. More... | |
virtual void | debug_print (std::ostream &os) const =0 |
Print debugging information to stream os. More... | |
Protected Member Functions | |
MyDXFPathEntity (const MyDXFEntity &ent) | |
![]() | |
void | write_common (class MyDXFFile *dxf, std::ofstream &ostr) |
void | process_group (class MyDXFFile *dxf) |
void | constructor_debug_print (void) const |
void | debug_print_base (std::ostream &os) const |
Additional Inherited Members | |
![]() | |
static void | bbox_ppoint (Vec3D &min, Vec3D &max, const Vec3D &p) |
Propose a point to bounding box. More... | |
![]() | |
std::string | _handle |
std::string | _layer |
Detailed Description
DXF path entity base class.
A base class for two dimensional DXF entities, which can be part of a path. All path entities have a start point and an end point, that can be read and set.
Constructor & Destructor Documentation
◆ ~MyDXFPathEntity()
|
inlinevirtual |
Virtual destructor.
Member Function Documentation
◆ end()
|
pure virtual |
Get end point of path entity.
Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.
◆ ray_cross()
|
pure virtual |
Check for ray crossing.
Check if ray going from point (x,y) downwards (negative y direction) crosses the entity. Return 1 if crosses odd number of times and 0 if even number of times. Return 2 in case of exact crossing at boundaries. This function is used as a subroutine to inside_loop().
Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.
◆ set_end()
|
pure virtual |
Set end point of path entity.
Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.
◆ set_start()
|
pure virtual |
Set start point of path entity.
Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.
◆ start()
|
pure virtual |
Get start point of path entity.
Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.
The documentation for this class was generated from the following file: