|
QCAD
Open Source 2D CAD
|
Go to the documentation of this file.
54 RHatchData(
bool solid,
double scaleFactor,
double angle,
const QString& patternName);
64 return !pattern.getPatternLines().isEmpty();
85 virtual double getDistanceTo(
const RVector& point,
bool limited =
true,
double range = 0.0,
bool draft =
false,
double strictRange =
RMAXDOUBLE)
const;
102 virtual QList<QSharedPointer<RShape> >
getShapes(
const RBox& queryBox =
RDEFAULT_RBOX,
bool ignoreComplex =
false,
bool segment =
false)
const;
103 virtual QList<QSharedPointer<RShape> >
getExploded()
const;
164 void addBoundary(QSharedPointer<RShape> shape,
bool addAutoLoops =
true);
175 QPair<QSharedPointer<RShape>, QSharedPointer<RShape> > getBoundaryElementsAt(
int index,
int& internalIndex)
const;
177 virtual void update()
const;
181 return boundary.count();
196 c.setAlpha(transparency);
202 c.setAlpha(transparency);
205 virtual RColor getColor(
bool resolve,
const QStack<REntity *>& blockRefStack)
const {
207 c.setAlpha(transparency);
212 return hatchProxy!=NULL;
219 if (hatchProxy!=NULL) {
233 QList<RLine> getSegments(
const RLine& line)
const;
void clearCustomPattern()
Definition: RHatchEntity.h:185
Interface for entity data classes that can deliver painter paths.
Definition: RPainterPathSource.h:40
virtual void update() const
Entities can reimplement this function to invalidate any internal cache (mark the entity as dirty).
Definition: REntityData.h:408
QString patternName
Definition: RHatchData.h:239
virtual bool stretch(const RPolyline &area, const RVector &offset)
Stretches the end points of this entity that are inside area by offset.
Definition: REntityData.cpp:636
void addBoundary(QSharedPointer< RShape > shape)
Definition: RHatchEntity.h:129
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RHatchData.h:44
QString getPatternName() const
Definition: RHatchData.h:143
QList< RPainterPath > painterPaths
Definition: RHatchData.h:255
virtual RBox getBoundingBox(bool ignoreEmpty=false) const
Definition: REntityData.cpp:303
bool solid
Definition: RHatchData.h:236
double gotPixelSizeHint
Definition: RHatchData.h:258
virtual int getComplexity() const
Definition: RHatchEntity.h:121
void setOriginPoint(const RVector &op, bool clearCustom=true)
Definition: RHatchData.h:136
void setCustomPattern(const RPattern &p)
Definition: RHatchData.h:71
virtual RColor getColor(bool resolve, const QStack< REntity * > &blockRefStack) const
Definition: RHatchData.h:205
Represents a 3d vector (x/y/z).
Definition: RVector.h:46
virtual bool intersectsWith(const RShape &shape) const
Definition: REntityData.cpp:499
QList< QList< QSharedPointer< RShape > > > getBoundary() const
Definition: RHatchData.h:168
RHatchData data
Definition: RHatchEntity.h:211
QList< RPainterPath > getPainterPaths(bool draft=false, double pixelSizeHint=0.0) const
Definition: RHatchEntity.h:117
EntityType
Entity types used for property handling / filtering.
Definition: RS.h:125
RPainterPath boundaryPath
Definition: RHatchData.h:254
bool gotDraft
Definition: RHatchData.h:257
RPattern pattern
Custom pattern loaded from DXF file, not LIN file.
Definition: RHatchData.h:252
QList< QList< QSharedPointer< RShape > > > boundary
Hatch boundary, ordered by loops, in strictly defined order.
Definition: RHatchData.h:246
double angle
Definition: RHatchData.h:238
RDocument * document
Definition: RObject.h:341
int getLoopCount() const
Definition: RHatchData.h:180
RPattern getCustomPattern() const
Definition: RHatchData.h:67
QList< RPolyline > getBoundaryAsPolylines(double segmentLength) const
Definition: RHatchEntity.h:193
bool hasCustomPattern() const
Definition: RHatchData.h:63
#define QCADENTITY_EXPORT
Definition: entity_global.h:10
static RHatchProxy * getHatchProxy()
Definition: RHatchData.h:228
static bool hasProxy()
Definition: RHatchData.h:211
virtual bool cloneOnChange() const
Reimplement to force clone on change in transactions.
Definition: RHatchData.h:75
Low-level mathematical representation of a line.
Definition: RLine.h:41
Interface for geometrical shape classes.
Definition: RShape.h:72
virtual RS::EntityType getType() const
Definition: RHatchData.h:56
double getAngle() const
Definition: RHatchData.h:123
Proxy for advanced hatch functionality.
Definition: RHatchProxy.h:35
#define RDEFAULT_RVECTOR
Definition: RVector.h:37
Q_DECLARE_METATYPE(RMath *)
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RPattern.h:44
virtual RShape * castToShape()
Definition: RHatchData.h:98
virtual QList< RRefPoint > getReferencePoints(RS::ProjectionRenderingHint hint=RS::RenderTop) const =0
double scaleFactor
Definition: RHatchData.h:237
Base class for all entity data classes.
Definition: REntityData.h:67
#define RDEFAULT_MIN1
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RExplodable.h:30
static RHatchProxy * hatchProxy
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RHatchData.h:260
void setSolid(bool on)
Definition: RHatchData.h:109
Point entity.
Definition: RHatchEntity.h:38
Extended painter path with a z-level and a pen.
Definition: RPainterPath.h:46
@ EntityHatch
Hatch.
Definition: RS.h:169
void setPatternName(const QString &n)
Definition: RHatchData.h:147
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition: RDocument.h:72
virtual bool move(const RVector &offset)
Moves this entity by the given offset.
Definition: REntityData.cpp:571
int transparency
Definition: RHatchData.h:241
double getScale() const
Definition: RHatchData.h:114
#define RMAXDOUBLE
Definition: RMath.h:63
virtual bool scale(const RVector &scaleFactors, const RVector ¢er=RDEFAULT_RVECTOR)
Definition: REntityData.cpp:591
void setTransparency(int t)
Definition: RHatchData.h:156
virtual bool mirror(const RLine &axis)
Definition: REntityData.cpp:611
QList< QSharedPointer< RShape > > getLoopBoundary(int index) const
Definition: RHatchEntity.h:189
void setAngle(double a)
Definition: RHatchData.h:127
virtual bool rotate(double rotation, const RVector ¢er=RDEFAULT_RVECTOR)
Definition: REntityData.cpp:581
bool isSolid() const
Definition: RHatchData.h:105
virtual RColor getColor(const RColor &unresolvedColor, const QStack< REntity * > &blockRefStack) const
Definition: RHatchData.h:200
void setScale(double s)
Definition: RHatchData.h:118
virtual RColor getColor() const
Definition: REntityData.h:304
ProjectionRenderingHint
Sets the current rendering hint for exports.
Definition: RS.h:185
#define RDEFAULT_RBOX
Definition: RBox.h:32
virtual RVector getPointOnEntity() const
Definition: REntityData.cpp:362
void setPattern(const RPattern &p)
Definition: RHatchData.h:190
bool dirty
Definition: RHatchData.h:256
static void setHatchProxy(RHatchProxy *p)
Definition: RHatchData.h:218
virtual QList< QSharedPointer< RShape > > getShapes(const RBox &queryBox=RDEFAULT_RBOX, bool ignoreComplex=false, bool segment=false) const
Definition: REntityData.h:113
virtual QList< QSharedPointer< RShape > > getExploded() const
Definition: RHatchEntity.h:201
virtual RColor getColor() const
Definition: RHatchData.h:194
@ RenderTop
Definition: RS.h:186
Represents a box e.g.
Definition: RBox.h:43
virtual double getDistanceTo(const RVector &point, bool limited=true, double range=0.0, bool draft=false, double strictRange=RMAXDOUBLE) const
Definition: REntityData.cpp:289
void newLoop()
Definition: RHatchEntity.h:125
Low-level mathematical representation of an open polyline or closed polyline (= polygon).
Definition: RPolyline.h:49
RVector originPoint
Definition: RHatchData.h:240
virtual bool moveReferencePoint(const RVector &referencePoint, const RVector &targetPoint, Qt::KeyboardModifiers modifiers=Qt::NoModifier)=0
Moves the given reference point to the given target point or does nothing if this entity has no refer...
int getTransparency() const
Definition: RHatchData.h:152
Color.
Definition: RColor.h:44
RVector getOriginPoint() const
Definition: RHatchData.h:132