Open Source 2D CAD
RFileExporter Class Referenceabstract

Base class for file exporters. More...

#include <RFileExporter.h>

Inheritance diagram for RFileExporter:
RExporter RDxfExporter

Public Member Functions

virtual bool exportFile (const QString &fileName, const QString &nameFilter, bool setFileName=true)=0
 Must be implemented by file exporters to export the document into the given file. More...
virtual QString getCorrectedFileName (const QString &fileName, const QString &nameFilter)=0
 Must be implemented by file exporters to correct the given file name if necessary (add extension based on chosen name filter). More...
 RFileExporter ()
 Copyright (c) 2011-2017 by Andrew Mustun. More...
 RFileExporter (RDocument &document, RMessageHandler *messageHandler=NULL, RProgressHandler *progressHandler=NULL)
virtual ~RFileExporter ()
- Public Member Functions inherited from RExporter
virtual void endEntity ()
virtual void endExport ()
 Called at the end of a completed export. More...
virtual void exportArc (const RArc &arc, double offset=RNANDOUBLE)
virtual void exportArcSegment (const RArc &arc, bool allowForZeroLength=false)
virtual void exportBlock (RBlock &)
virtual void exportBlock (RBlock::Id blockId)
virtual void exportBlocks ()
virtual void exportBoundingBoxPaths (const QList< RPainterPath > &paths)
virtual void exportBox (const RBox &box)
 Exports the surfaces of the given box. More...
virtual void exportCircle (const RCircle &circle)
 Exports a circle with the current attributes. More...
virtual void exportClipRectangle (const RBox &clipRectangle, bool forceSelected=false)
virtual void exportCurrentEntity (bool preview=false, bool forceSelected=false)
 The default implementation calls the REntity::exportEntity() function of the entity. More...
virtual bool exportDocument ()
 Exports the visual representation of all objects (including entities) of the document. More...
virtual void exportDocumentSetting (const QString &key, const QVariant &value, const QString &dictionaryName="QCAD_OBJECTS")
virtual bool exportDocumentSettings ()
virtual void exportEllipse (const REllipse &ellipse, double offset=RNANDOUBLE)
 Exports an ellipse with the current attributes. More...
virtual void exportEntities (bool allBlocks=true, bool undone=false)
virtual void exportEntities (const RBox &box)
 Exports the visual representation of all entities that are completely or partly inside the given area. More...
virtual void exportEntities (QSet< REntity::Id > &entityIds, bool allBlocks=true)
 Calls exportEntity() for all given entities. More...
virtual void exportEntity (REntity &entity, bool preview=false, bool allBlocks=true, bool forceSelected=false)
 Exports the given entity as part of a block definition to be reused by block references. More...
virtual void exportEntity (REntity::Id entityId, bool allBlocks=true, bool forceSelected=false)
 Calls exportEntity(REntity*) for the entity with the given ID. More...
virtual void exportExplodable (const RExplodable &explodable, double offset=RNANDOUBLE)
virtual void exportImage (const RImageData &image, bool forceSelected=false)
virtual void exportIntListWithName (const QString &dictionaryName, const QString &name, const QString &listName, QList< int64_t > &values)
virtual void exportLayer (RLayer &)
virtual void exportLayer (RLayer::Id layerId)
virtual void exportLayers ()
virtual double exportLine (const RLine &line, double offset=RNANDOUBLE)
 Exports a line with the current attributes. More...
virtual void exportLineSegment (const RLine &line, double angle=RNANDOUBLE)=0
 Exports a line segment (a line without pattern). More...
virtual void exportLinetype (RLinetype &)
virtual void exportLinetypes ()
virtual bool exportLinetypeShape (QList< RPainterPath > &pps, const RLine &line, double total, double length, double angle, const RVector &cursor)
virtual void exportPainterPaths (const QList< RPainterPath > &paths)
virtual void exportPainterPaths (const QList< RPainterPath > &paths, double angle, const RVector &pos)
virtual void exportPainterPathSource (const RPainterPathSource &pathSource)
virtual void exportPoint (const RPoint &point)=0
 Exports a point with the current attributes. More...
virtual void exportPolyline (const RPolyline &polyline, bool polylineGen=true, double offset=RNANDOUBLE)
virtual void exportQuad (const RVector &p1, const RVector &p2, const RVector &p3, const RVector &p4)
 Exports a quadrilateral with the current attributes. More...
virtual void exportRay (const RRay &ray)=0
 Exports an infinite ray. More...
virtual void exportRectangle (const RVector &p1, const RVector &p2)
 Exports a rectangle with the current attributes. More...
virtual void exportShape (QSharedPointer< RShape > shape)
 Exports the given shapes as part of the geometry of the current entity. More...
virtual void exportShapes (const QList< QSharedPointer< RShape > > &shapes)
 Exports the given shapes as part of the geometry of the current entity. More...
virtual void exportShapeSegment (QSharedPointer< RShape > shape, double angle)
virtual void exportSpline (const RSpline &spline, double offset=RNANDOUBLE)
virtual void exportSplineSegment (const RSpline &spline)
virtual QList< RPainterPathexportText (const RTextBasedData &text, bool forceSelected=false)
virtual void exportThickPolyline (const RPolyline &polyline)
virtual void exportTriangle (const RTriangle &triangle)=0
 Exports a triangle with the current attributes. More...
virtual void exportVerticalQuad (const RVector &p1, const RVector &p2, double height)
 Exports a vertical quadrilateral with the two given base points and the given height. More...
virtual void exportView (RView &)
virtual void exportView (RView::Id viewId)
virtual void exportViews ()
virtual void exportXLine (const RXLine &xLine)=0
 Exports an infinite line. More...
virtual REntitygetBlockRefOrEntity ()
virtual REntity::Id getBlockRefOrEntityId ()
virtual QStack< REntity * > getBlockRefViewportStack () const
virtual QBrush getBrush (const RPainterPath &path)
virtual QBrush getBrush ()
bool getClipping () const
virtual RColor getColor (bool resolve)
virtual REntitygetCurrentBlockRef () const
virtual RViewportEntitygetCurrentViewport () const
RDocumentgetDocument () const
bool getDraftMode () const
virtual REntitygetEntity ()
virtual const REntitygetEntity () const
virtual QSharedPointer< RLayergetEntityLayer (REntity &entity)
QStack< REntity * > getEntityStack ()
QString getErrorMessage () const
virtual RLinetypePattern getLinetypePattern ()
virtual double getLineTypePatternScale (const RLinetypePattern &p) const
virtual QPen getPen (const RPainterPath &path)
virtual QPen getPen ()
double getPixelSizeHint () const
bool getPixelUnit () const
RS::ProjectionRenderingHint getProjectionRenderingHint ()
virtual bool getScreenBasedLinetypes () const
bool getTwoColorSelectedMode () const
virtual bool isEntitySelected ()
virtual bool isTextRenderedAsText ()
 Override to force text rendering mode. More...
virtual bool isVisible (REntity &entity)
bool isVisualExporter () const
void popEntity ()
void pushEntity (REntity *e)
 RExporter ()
 RExporter (RDocument &document, RMessageHandler *messageHandler=NULL, RProgressHandler *progressHandler=NULL)
void setBlockSource (RDocument *bs)
virtual void setBrush (const QBrush &brush)
virtual void setBrushStyle (Qt::BrushStyle brushStyle)
void setClipping (bool on)
virtual void setColor (float r, float g, float b, float a=1.0f)
 Sets the current export color in RGB and Alpha. More...
virtual void setColor (const RColor &color)
virtual void setDashPattern (const QVector< qreal > &dashes)
void setDraftMode (bool on)
virtual void setEntityAttributes (bool forceSelected=false)
void setLayerSource (RDocument *ls)
virtual void setLinetypeId (RLinetype::Id ltId)
virtual void setLinetypePattern (const RLinetypePattern &ltPattern)
virtual void setLineweight (RLineweight::Lineweight weight)
virtual void setPen (const QPen &pen)
 Sets the current pen (currentPen). More...
void setPixelSizeHint (double v)
void setPixelUnit (bool on)
void setProjectionRenderingHint (RS::ProjectionRenderingHint p)
 Sets a rendering hint for the current projection used for exports. More...
void setScreenBasedLinetypes (bool on)
virtual void setStyle (Qt::PenStyle penStyle)
void setTwoColorSelectedMode (bool on)
void setVisualExporter (bool on)
virtual void startEntity (bool)
virtual void startExport ()
 Called to start a new, complete export. More...
void toggleDraftMode ()
void toggleScreenBasedLinetypes ()
virtual void unexportEntity (REntity::Id entityId)
 This is called for entities for which an export was requested but which cannot be instantiated because they either do not exist (anymore) in the DB or they are currently undone. More...
virtual ~RExporter ()

Additional Inherited Members

- Protected Attributes inherited from RExporter
QStack< REntity * > blockRefViewportStack
bool clipping
QBrush currentBrush
RLinetypePattern currentLinetypePattern
QPen currentPen
bool draftMode
QStack< REntity * > entityStack
QString errorMessage
double pixelSizeHint
bool pixelUnit
bool screenBasedLinetypes
bool twoColorSelectedMode
bool visualExporter

Detailed Description

Base class for file exporters.

File exporters export RDocument objects into files of a specific format.

This class is available in script environments.

Constructor & Destructor Documentation

RFileExporter::RFileExporter ( )

Copyright (c) 2011-2017 by Andrew Mustun.

All rights reserved.

This file is part of the QCAD project.

QCAD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

QCAD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with QCAD.

RFileExporter::RFileExporter ( RDocument document,
RMessageHandler messageHandler = NULL,
RProgressHandler progressHandler = NULL 
RFileExporter::~RFileExporter ( )

Member Function Documentation

virtual bool RFileExporter::exportFile ( const QString &  fileName,
const QString &  nameFilter,
bool  setFileName = true 
pure virtual

Must be implemented by file exporters to export the document into the given file.

Implemented in RDxfExporter.

virtual QString RFileExporter::getCorrectedFileName ( const QString &  fileName,
const QString &  nameFilter 
pure virtual

Must be implemented by file exporters to correct the given file name if necessary (add extension based on chosen name filter).

Implemented in RDxfExporter.

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