QCAD
Open Source 2D CAD
RRestrictOrthogonal.h
Go to the documentation of this file.
1 
20 #ifndef RRESTRICTORTHOGONAL_H
21 #define RRESTRICTORTHOGONAL_H
22 
23 #include "snap_global.h"
24 
25 #include "RSnapRestriction.h"
26 
27 class RDocumentInterface;
28 
37 public:
38  enum OrthoMode {
41  Orthogonal
42  };
43 
45  : RSnapRestriction(documentInterface),
46  mode(RRestrictOrthogonal::Orthogonal) {}
47  virtual ~RRestrictOrthogonal() {}
48 
49  virtual RVector restrictSnap(const RVector& position, const RVector& relativeZero);
50 
51 protected:
53 };
54 
57 
58 #endif
Represents a 3d vector (x/y/z).
Definition: RVector.h:46
Abstract base class for all snap restriction implementations.
Definition: RSnapRestriction.h:37
Definition: RRestrictOrthogonal.h:40
virtual RVector restrictSnap(const RVector &position, const RVector &relativeZero)=0
OrthoMode mode
Definition: RRestrictOrthogonal.h:52
Q_DECLARE_METATYPE(RMath *)
RRestrictOrthogonal(RDocumentInterface *documentInterface)
Definition: RRestrictOrthogonal.h:44
Definition: RRestrictOrthogonal.h:39
OrthoMode
Definition: RRestrictOrthogonal.h:38
Interface for interaction between a graphics document and a user.
Definition: RDocumentInterface.h:82
#define QCADSNAP_EXPORT
Definition: snap_global.h:10
Orthogonal snap restriction implementation.
Definition: RRestrictOrthogonal.h:36
virtual ~RRestrictOrthogonal()
Definition: RRestrictOrthogonal.h:47