|  | QCAD
    Open Source 2D CAD | 
Auto snapper implementation. More...
#include <RSnapAuto.h>
 
  
| Public Types | |
| enum | Mode { None = 0x0000 , Intersections = 0x0001 , EndPoints = 0x0002 , MiddlePoints = 0x0004 , CenterPoints = 0x0008 , PerpendicularPoints = 0x0010 , TangentialPoints = 0x0020 , ReferencePoints = 0x0040 , GridPoints = 0x0080 , PointsOnEntity = 0x0100 , FreePositioning = 0x0200 } | 
|  Public Types inherited from RSnap | |
| enum | Status { Unknown = 0 , Free = 1 , Grid = 2 , Endpoint = 3 , OnEntity = 4 , Center = 5 , Middle = 6 , Distance = 7 , Intersection = 8 , IntersectionManual = 9 , Reference = 10 , Perpendicular = 11 , Tangential = 12 , Coordinate = 13 , CoordinatePolar = 14 } | 
| Snap status, returned by snap tools (most importantly auto snap tool) to indicate what snap was used.  More... | |
| Public Member Functions | |
| virtual void | reset () | 
| RSnapAuto () | |
| virtual RVector | snap (const RVector &position, RGraphicsView &view, double range=RNANDOUBLE) | 
| virtual | ~RSnapAuto () | 
|  Public Member Functions inherited from RSnap | |
| virtual void | finishEvent () | 
| QList< RObject::Id > | getEntityIds () | 
| RVector | getLastSnap () const | 
| RSnap::Status | getStatus () const | 
| virtual void | hideUiOptions () | 
| RSnap (RSnap::Status s=RSnap::Unknown) | |
| void | setLastSnap (const RVector &v) | 
| void | setStatus (RSnap::Status s) | 
| virtual void | showUiOptions () | 
| virtual RVector | snap (RMouseEvent &event) | 
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
| virtual void | suspendEvent () | 
| ~RSnap () | |
| Static Public Member Functions | |
| static bool | getCenterPoints () | 
| static bool | getEndPoints () | 
| static bool | getFreePositioning () | 
| static bool | getGridPoints () | 
| static bool | getIntersections () | 
| static bool | getMiddlePoints () | 
| static bool | getMode (RSnapAuto::Mode mode) | 
| static RSnapAuto::Modes | getModes () | 
| static bool | getPerpendicular () | 
| static bool | getPointsOnEntity () | 
| static bool | getReferencePoints () | 
| static bool | getTangential () | 
| static void | init (bool force=false) | 
| static void | setCenterPoints (bool on) | 
| static void | setEndPoints (bool on) | 
| static void | setFreePositioning (bool on) | 
| static void | setGridPoints (bool on) | 
| static void | setIntersections (bool on) | 
| static void | setMiddlePoints (bool on) | 
| static void | setMode (RSnapAuto::Mode mode, bool on) | 
| static void | setModes (RSnapAuto::Modes m) | 
| static void | setPerpendicular (bool on) | 
| static void | setPointsOnEntity (bool on) | 
| static void | setReferencePoints (bool on) | 
| static void | setTangential (bool on) | 
| Static Private Attributes | |
| static bool | initialized = false | 
| Copyright (c) 2011-2018 by Andrew Mustun. | |
| static Modes | modes = RSnapAuto::None | 
| Additional Inherited Members | |
|  Protected Attributes inherited from RSnap | |
| QList< RObject::Id > | entityIds | 
| RVector | lastSnap | 
| RSnap::Status | status | 
Auto snapper implementation.
| enum RSnapAuto::Mode | 
| 
 | inline | 
| 
 | inlinevirtual | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | static | 
| 
 | inlinevirtual | 
Reimplemented from RSnap.
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | virtual | 
Reimplemented from RSnap.
| 
 | staticprivate | 
Copyright (c) 2011-2018 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.
| 
 | staticprivate |