QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RWipeoutData.h
Go to the documentation of this file.
1
20#ifndef RWIPEOUTDATA_H
21#define RWIPEOUTDATA_H
22
23#include "entity_global.h"
24
25#include "RPolylineData.h"
26
27class RBox;
28class RDocument;
29class RPolyline;
30class RPolylineData;
31class RRefPoint;
32class RVector;
33class RWipeoutData;
34class RWipeoutEntity;
35
36
37#ifndef RDEFAULT_MIN1
38#define RDEFAULT_MIN1 -1
39#endif
40
50
51 friend class RWipeoutEntity;
52
53protected:
54 RWipeoutData(RDocument* document, const RWipeoutData& data);
55
56public:
58 RWipeoutData(const RPolyline& polyline);
59
60 virtual RS::EntityType getType() const {
61 return RS::EntityWipeout;
62 }
63
64 virtual QList<RBox> getBoundingBoxes(bool ignoreEmpty) const;
65
66 virtual QList<RRefPoint> getReferencePoints(RS::ProjectionRenderingHint hint = RS::RenderTop) const;
67
68 virtual bool moveReferencePoint(const RVector& referencePoint, const RVector& targetPoint, Qt::KeyboardModifiers modifiers);
69
70 virtual double getDistanceTo(const RVector& point, bool limited = true, double range = 0.0, bool draft = false, double strictRange = RMAXDOUBLE) const;
71
72 bool getShowFrame() const {
73 return showFrame;
74 }
75
76 void setShowFrame(bool on) {
77 showFrame = on;
78 }
79
80 RPolyline getBoundary() const;
81
82private:
84};
85
89Q_DECLARE_METATYPE(QSharedPointer<RWipeoutData>)
90
91#endif
Q_DECLARE_METATYPE(RMath *)
#define RMAXDOUBLE
Definition RMath.h:66
Represents a box e.g.
Definition RBox.h:46
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition RDocument.h:78
Stores and manages all data that defines the geometry and appearance of a polyline entity.
Definition RPolylineData.h:46
virtual QList< RBox > getBoundingBoxes(bool ignoreEmpty=false) const
Definition RPolylineData.cpp:45
virtual bool moveReferencePoint(const RVector &referencePoint, const RVector &targetPoint, Qt::KeyboardModifiers modifiers=Qt::NoModifier)
Moves the given reference point to the given target point or does nothing if this entity has no refer...
Definition RPolylineData.cpp:91
virtual QList< RRefPoint > getReferencePoints(RS::ProjectionRenderingHint hint=RS::RenderTop) const
Definition RPolylineData.cpp:66
virtual double getDistanceTo(const RVector &point, bool limited=true, double range=0.0, bool draft=false, double strictRange=RMAXDOUBLE) const
Definition RPolylineData.h:137
Low-level mathematical representation of an open polyline or closed polyline (= polygon).
Definition RPolyline.h:50
Represents a reference point of an entity.
Definition RRefPoint.h:18
EntityType
Entity types used for property handling / filtering.
Definition RS.h:227
@ EntityWipeout
Wipeout.
Definition RS.h:279
ProjectionRenderingHint
Sets the current rendering hint for exports.
Definition RS.h:293
@ RenderTop
Definition RS.h:294
Represents a 3d vector (x/y/z).
Definition RVector.h:47
Stores and manages all data that defines the geometry and appearance of a wipeout entity.
Definition RWipeoutData.h:49
void setShowFrame(bool on)
Definition RWipeoutData.h:76
bool showFrame
Definition RWipeoutData.h:83
virtual RS::EntityType getType() const
Definition RWipeoutData.h:60
bool getShowFrame() const
Definition RWipeoutData.h:72
Polyline entity.
Definition RWipeoutEntity.h:42
#define QCADENTITY_EXPORT
Definition entity_global.h:10