Navigation

Main Page
Download
Support
Installation
Tutorial
Examples
Reference Manual
   Version 1.0.6dev
      Class Index
      File List
   Version 1.0.6
   Version 1.0.5new_solver
   Version 1.0.5dev
   Version 1.0.5b
   Version 1.0.4dev
   Version 1.0.4
Publications


Hosted by Get Ion Beam Simulator at SourceForge.net. Fast, secure and Free Open Source software downloads
MyDXFPathEntity Class Referenceabstract

DXF path entity base class. More...

#include <mydxfentities.hpp>

Inheritance diagram for MyDXFPathEntity:
MyDXFEntity MyDXFArc MyDXFCircle MyDXFLWPolyline MyDXFLine MyDXFSpline

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...
 
- Public Member Functions inherited from MyDXFEntity
virtual ~MyDXFEntity ()
 Virtual destructor. More...
 
virtual MyDXFEntitycopy (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)
 
- Protected Member Functions inherited from MyDXFEntity
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 Protected Member Functions inherited from MyDXFEntity
static void bbox_ppoint (Vec3D &min, Vec3D &max, const Vec3D &p)
 Propose a point to bounding box. More...
 
- Protected Attributes inherited from MyDXFEntity
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()

virtual MyDXFPathEntity::~MyDXFPathEntity ( )
inlinevirtual

Virtual destructor.

Member Function Documentation

◆ end()

virtual Vec3D MyDXFPathEntity::end ( void  ) const
pure virtual

Get end point of path entity.

Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.

◆ ray_cross()

virtual int MyDXFPathEntity::ray_cross ( double  x,
double  y 
) const
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()

virtual void MyDXFPathEntity::set_end ( const Vec3D e)
pure virtual

Set end point of path entity.

Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.

◆ set_start()

virtual void MyDXFPathEntity::set_start ( const Vec3D s)
pure virtual

Set start point of path entity.

Implemented in MyDXFSpline, MyDXFLWPolyline, MyDXFLine, MyDXFCircle, and MyDXFArc.

◆ start()

virtual Vec3D MyDXFPathEntity::start ( void  ) const
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:


Reference manual for Ion Beam Simulator 1.0.6dev
Generated by Doxygen 1.9.1 on Thu Sep 11 2025 09:37:24.