Stefan Schuermans
implement finer approximation for circles and arcs on import, implement import of ellipses
Stefan Schuermans commited 3c3d918 at 2013-01-29 23:06:23
/* drawing (DXF) to G-code (NGC) converter
* Copyright 2013 Stefan Schuermans <stefan@schuermans.info>
* Copyleft: CC-BY-SA http://creativecommons.org/licenses/by-sa/3.0/
*/
#ifndef DRAWING_H
#define DRAWING_H
#include <map>
#include <string>
#include "layer.h"
/// drawing, e.g. a loaded DXF file
class Drawing {
public:
/// type for layers in drawing (key: layer name, value: layer)
typedef std::map<std::string, Layer> Layers;
/**
* @brief clear all contents of drawing
*/
void clear();
/**
* @brief add a DXF file to this drawing
* @param[in] strFileName name of the DXF file to read
* @param[in] precision precision for entity to lines conversion
* @return if the DXF file could be read
*/
bool addDxf(const std::string &strFileName, double precision);
/**
* @brief load a DXF file to this drawing
* @param[in] strFileName name of the DXF file to read
* @param[in] precision precision for entity to lines conversion
* @return if the DXF file could be read
*/
bool loadDxf(const std::string &strFileName, double precision);
/**
* @brief improve paths in layers
* @param[in] eqDist maximum distance of tho points to be considered equal
*/
void improvePaths(double eqDist);
Layers mLayers; ///< layers in drawing
};
#endif // #ifndef DRAWING_H
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX