QCAD
Open Source 2D CAD
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DL_CreationInterface Class Reference

Abstract class (interface) for the creation of new entities. More...

#include <dl_creationinterface.h>

Inheritance diagram for DL_CreationInterface:
DL_CreationAdapter RDxfImporter Test_CreationClass

List of all members.

Public Member Functions

virtual void add3dFace (const DL_3dFaceData &data)=0
 Called for every 3dface start.
virtual void addArc (const DL_ArcData &data)=0
 Called for every arc.
virtual void addAttribute (const DL_AttributeData &data)=0
 Called for every Block Attribute entity.
virtual void addBlock (const DL_BlockData &data)=0
 Called for every block.
virtual void addCircle (const DL_CircleData &data)=0
 Called for every circle.
virtual void addComment (const std::string &comment)=0
 Called for every comment in the DXF file (code 999).
virtual void addControlPoint (const DL_ControlPointData &data)=0
 Called for every spline control point.
virtual void addDictionary (const DL_DictionaryData &data)=0
 Called for dictionary objects.
virtual void addDictionaryEntry (const DL_DictionaryEntryData &data)=0
 Called for dictionary entries.
virtual void addDimAlign (const DL_DimensionData &data, const DL_DimAlignedData &edata)=0
 Called for every aligned dimension entity.
virtual void addDimAngular (const DL_DimensionData &data, const DL_DimAngularData &edata)=0
 Called for every angular dimension (2 lines version) entity.
virtual void addDimAngular3P (const DL_DimensionData &data, const DL_DimAngular3PData &edata)=0
 Called for every angular dimension (3 points version) entity.
virtual void addDimDiametric (const DL_DimensionData &data, const DL_DimDiametricData &edata)=0
 Called for every diametric dimension entity.
virtual void addDimLinear (const DL_DimensionData &data, const DL_DimLinearData &edata)=0
 Called for every linear or rotated dimension entity.
virtual void addDimOrdinate (const DL_DimensionData &data, const DL_DimOrdinateData &edata)=0
 Called for every ordinate dimension entity.
virtual void addDimRadial (const DL_DimensionData &data, const DL_DimRadialData &edata)=0
 Called for every radial dimension entity.
virtual void addEllipse (const DL_EllipseData &data)=0
 Called for every ellipse.
virtual void addFitPoint (const DL_FitPointData &data)=0
 Called for every spline fit point.
virtual void addHatch (const DL_HatchData &data)=0
 Called for every hatch entity.
virtual void addHatchEdge (const DL_HatchEdgeData &data)=0
 Called for every hatch edge entity.
virtual void addHatchLoop (const DL_HatchLoopData &data)=0
 Called for every hatch loop.
virtual void addImage (const DL_ImageData &data)=0
 Called for every image entity.
virtual void addInsert (const DL_InsertData &data)=0
 Called for every insert.
virtual void addKnot (const DL_KnotData &data)=0
 Called for every spline knot value.
virtual void addLayer (const DL_LayerData &data)=0
 Called for every layer.
virtual void addLeader (const DL_LeaderData &data)=0
 Called for every leader start.
virtual void addLeaderVertex (const DL_LeaderVertexData &data)=0
 Called for every leader vertex.
virtual void addLine (const DL_LineData &data)=0
 Called for every line.
virtual void addLinetype (const DL_LinetypeData &data)=0
 Called for every linetype.
virtual void addLinetypeDash (double length)=0
 Called for every dash in linetype pattern.
virtual void addMText (const DL_MTextData &data)=0
 Called for every Multi Text entity.
virtual void addMTextChunk (const std::string &text)=0
 Called for additional text chunks for MTEXT entities.
virtual void addPoint (const DL_PointData &data)=0
 Called for every point.
virtual void addPolyline (const DL_PolylineData &data)=0
 Called for every polyline start.
virtual void addRay (const DL_RayData &data)=0
 Called for every ray.
virtual void addSolid (const DL_SolidData &data)=0
 Called for every solid start.
virtual void addSpline (const DL_SplineData &data)=0
 Called for every spline.
virtual void addText (const DL_TextData &data)=0
 Called for every Text entity.
virtual void addTextStyle (const DL_StyleData &data)=0
 Called for every text style.
virtual void addTrace (const DL_TraceData &data)=0
 Called for every trace start.
virtual void addVertex (const DL_VertexData &data)=0
 Called for every polyline vertex.
virtual void addXDataApp (const std::string &appId)=0
 Called for every beginning of an XData section of the given application.
virtual void addXDataInt (int code, int value)=0
 Called for XData tuples.
virtual void addXDataReal (int code, double value)=0
 Called for XData tuples.
virtual void addXDataString (int code, const std::string &value)=0
 Called for XData tuples.
virtual void addXLine (const DL_XLineData &data)=0
 Called for every xline.
virtual void addXRecord (const std::string &handle)=0
 Called for every XRecord with the given handle.
virtual void addXRecordBool (int code, bool value)=0
 Called for XRecords of type bool.
virtual void addXRecordInt (int code, int value)=0
 Called for XRecords of type int.
virtual void addXRecordReal (int code, double value)=0
 Called for XRecords of type double.
virtual void addXRecordString (int code, const std::string &value)=0
 Called for XRecords of type string.
 DL_CreationInterface ()
virtual void endBlock ()=0
 Called to end the current block.
virtual void endEntity ()=0
 Called after an entity has been completed.
virtual void endSection ()=0
 Called when a section (entity, table entry, etc.) is finished.
virtual void endSequence ()=0
 Called when a SEQEND occurs (when a POLYLINE or ATTRIB is done)
DL_Attributes getAttributes ()
DL_ExtrusiongetExtrusion ()
virtual void linkImage (const DL_ImageDefData &data)=0
 Called for every image definition.
virtual void processCodeValuePair (unsigned int groupCode, const std::string &groupValue)=0
 Called for every code / value tuple of the DXF file.
void setAttributes (const DL_Attributes &attrib)
 Sets the current attributes for entities.
void setExtrusion (double dx, double dy, double dz, double elevation)
 Sets the current attributes for entities.
virtual void setVariableDouble (const std::string &key, double value, int code)=0
 Called for every double variable in the DXF file (e.g.
virtual void setVariableInt (const std::string &key, int value, int code)=0
 Called for every int variable in the DXF file (e.g.
virtual void setVariableString (const std::string &key, const std::string &value, int code)=0
 Called for every string variable in the DXF file (e.g.
virtual void setVariableVector (const std::string &key, double v1, double v2, double v3, int code)=0
 Called for every vector variable in the DXF file (e.g.
virtual ~DL_CreationInterface ()

Protected Attributes

DL_Attributes attributes
DL_Extrusionextrusion

Detailed Description

Abstract class (interface) for the creation of new entities.

Inherit your class which takes care of the entities in the processed DXF file from this interface.

Double arrays passed to your implementation contain 3 double values for x, y, z coordinates unless stated differently.

Author:
Andrew Mustun

Constructor & Destructor Documentation

DL_CreationInterface::DL_CreationInterface ( )
inline
virtual DL_CreationInterface::~DL_CreationInterface ( )
inlinevirtual

Member Function Documentation

virtual void DL_CreationInterface::add3dFace ( const DL_3dFaceData data)
pure virtual

Called for every 3dface start.

Implemented in DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addArc ( const DL_ArcData data)
pure virtual

Called for every arc.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addAttribute ( const DL_AttributeData data)
pure virtual

Called for every Block Attribute entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addBlock ( const DL_BlockData data)
pure virtual

Called for every block.

Note: all entities added after this command go into this block until endBlock() is called.

See also:
endBlock()

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addCircle ( const DL_CircleData data)
pure virtual

Called for every circle.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addComment ( const std::string &  comment)
pure virtual

Called for every comment in the DXF file (code 999).

Implemented in DL_CreationAdapter.

virtual void DL_CreationInterface::addControlPoint ( const DL_ControlPointData data)
pure virtual

Called for every spline control point.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDictionary ( const DL_DictionaryData data)
pure virtual

Called for dictionary objects.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDictionaryEntry ( const DL_DictionaryEntryData data)
pure virtual

Called for dictionary entries.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimAlign ( const DL_DimensionData data,
const DL_DimAlignedData edata 
)
pure virtual

Called for every aligned dimension entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimAngular ( const DL_DimensionData data,
const DL_DimAngularData edata 
)
pure virtual

Called for every angular dimension (2 lines version) entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimAngular3P ( const DL_DimensionData data,
const DL_DimAngular3PData edata 
)
pure virtual

Called for every angular dimension (3 points version) entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimDiametric ( const DL_DimensionData data,
const DL_DimDiametricData edata 
)
pure virtual

Called for every diametric dimension entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimLinear ( const DL_DimensionData data,
const DL_DimLinearData edata 
)
pure virtual

Called for every linear or rotated dimension entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimOrdinate ( const DL_DimensionData data,
const DL_DimOrdinateData edata 
)
pure virtual

Called for every ordinate dimension entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addDimRadial ( const DL_DimensionData data,
const DL_DimRadialData edata 
)
pure virtual

Called for every radial dimension entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addEllipse ( const DL_EllipseData data)
pure virtual

Called for every ellipse.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addFitPoint ( const DL_FitPointData data)
pure virtual

Called for every spline fit point.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addHatch ( const DL_HatchData data)
pure virtual

Called for every hatch entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addHatchEdge ( const DL_HatchEdgeData data)
pure virtual

Called for every hatch edge entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addHatchLoop ( const DL_HatchLoopData data)
pure virtual

Called for every hatch loop.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addImage ( const DL_ImageData data)
pure virtual

Called for every image entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addInsert ( const DL_InsertData data)
pure virtual

Called for every insert.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addKnot ( const DL_KnotData data)
pure virtual

Called for every spline knot value.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addLayer ( const DL_LayerData data)
pure virtual

Called for every layer.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addLeader ( const DL_LeaderData data)
pure virtual

Called for every leader start.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addLeaderVertex ( const DL_LeaderVertexData data)
pure virtual

Called for every leader vertex.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addLine ( const DL_LineData data)
pure virtual

Called for every line.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addLinetype ( const DL_LinetypeData data)
pure virtual

Called for every linetype.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addLinetypeDash ( double  length)
pure virtual

Called for every dash in linetype pattern.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addMText ( const DL_MTextData data)
pure virtual

Called for every Multi Text entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addMTextChunk ( const std::string &  text)
pure virtual

Called for additional text chunks for MTEXT entities.

The chunks come at 250 character in size each. Note that those chunks come before the actual MTEXT entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addPoint ( const DL_PointData data)
pure virtual

Called for every point.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addPolyline ( const DL_PolylineData data)
pure virtual

Called for every polyline start.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addRay ( const DL_RayData data)
pure virtual

Called for every ray.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addSolid ( const DL_SolidData data)
pure virtual

Called for every solid start.

Implemented in DL_CreationAdapter, and RDxfImporter.

virtual void DL_CreationInterface::addSpline ( const DL_SplineData data)
pure virtual

Called for every spline.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addText ( const DL_TextData data)
pure virtual

Called for every Text entity.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addTextStyle ( const DL_StyleData data)
pure virtual

Called for every text style.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addTrace ( const DL_TraceData data)
pure virtual

Called for every trace start.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addVertex ( const DL_VertexData data)
pure virtual

Called for every polyline vertex.

Implemented in RDxfImporter, DL_CreationAdapter, and Test_CreationClass.

virtual void DL_CreationInterface::addXDataApp ( const std::string &  appId)
pure virtual

Called for every beginning of an XData section of the given application.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXDataInt ( int  code,
int  value 
)
pure virtual

Called for XData tuples.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXDataReal ( int  code,
double  value 
)
pure virtual

Called for XData tuples.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXDataString ( int  code,
const std::string &  value 
)
pure virtual

Called for XData tuples.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXLine ( const DL_XLineData data)
pure virtual

Called for every xline.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXRecord ( const std::string &  handle)
pure virtual

Called for every XRecord with the given handle.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXRecordBool ( int  code,
bool  value 
)
pure virtual

Called for XRecords of type bool.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXRecordInt ( int  code,
int  value 
)
pure virtual

Called for XRecords of type int.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXRecordReal ( int  code,
double  value 
)
pure virtual

Called for XRecords of type double.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::addXRecordString ( int  code,
const std::string &  value 
)
pure virtual

Called for XRecords of type string.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::endBlock ( )
pure virtual

Called to end the current block.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::endEntity ( )
pure virtual

Called after an entity has been completed.

Implemented in DL_CreationAdapter, and RDxfImporter.

virtual void DL_CreationInterface::endSection ( )
pure virtual

Called when a section (entity, table entry, etc.) is finished.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::endSequence ( )
pure virtual

Called when a SEQEND occurs (when a POLYLINE or ATTRIB is done)

Implemented in DL_CreationAdapter.

DL_Attributes DL_CreationInterface::getAttributes ( )
inline
Returns:
the current attributes used for new entities.
DL_Extrusion* DL_CreationInterface::getExtrusion ( )
inline
Returns:
the current attributes used for new entities.
virtual void DL_CreationInterface::linkImage ( const DL_ImageDefData data)
pure virtual

Called for every image definition.

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::processCodeValuePair ( unsigned int  groupCode,
const std::string &  groupValue 
)
pure virtual

Called for every code / value tuple of the DXF file.

The complete DXF file contents can be handled by the implemetation of this function.

Implemented in DL_CreationAdapter.

void DL_CreationInterface::setAttributes ( const DL_Attributes attrib)
inline

Sets the current attributes for entities.

void DL_CreationInterface::setExtrusion ( double  dx,
double  dy,
double  dz,
double  elevation 
)
inline

Sets the current attributes for entities.

virtual void DL_CreationInterface::setVariableDouble ( const std::string &  key,
double  value,
int  code 
)
pure virtual

Called for every double variable in the DXF file (e.g.

"$DIMEXO").

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::setVariableInt ( const std::string &  key,
int  value,
int  code 
)
pure virtual

Called for every int variable in the DXF file (e.g.

"$ACADMAINTVER").

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::setVariableString ( const std::string &  key,
const std::string &  value,
int  code 
)
pure virtual

Called for every string variable in the DXF file (e.g.

"$ACADVER").

Implemented in RDxfImporter, and DL_CreationAdapter.

virtual void DL_CreationInterface::setVariableVector ( const std::string &  key,
double  v1,
double  v2,
double  v3,
int  code 
)
pure virtual

Called for every vector variable in the DXF file (e.g.

"$EXTMIN").

Implemented in RDxfImporter, and DL_CreationAdapter.


Member Data Documentation

DL_Attributes DL_CreationInterface::attributes
protected
DL_Extrusion* DL_CreationInterface::extrusion
protected

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