Open Source 2D CAD
RSnapEntityBase Class Referenceabstract

Base class for entity based snap classes. More...

#include <RSnapEntityBase.h>

Inheritance diagram for RSnapEntityBase:
RSnap RSnapCenter RSnapDistance RSnapEnd RSnapMiddle RSnapOnEntity RSnapPerpendicular RSnapReference RSnapTangential

Public Member Functions

 RSnapEntityBase (RSnap::Status s)
virtual RVector snap (const RVector &position, RGraphicsView &view, double range=RNANDOUBLE)
 Copyright (c) 2011-2017 by Andrew Mustun. More...
virtual RVector snap (const RVector &position, RGraphicsView &view, const QSet< REntity::Id > &candidates, const RBox &queryBox)
virtual ~RSnapEntityBase ()
- Public Member Functions inherited from RSnap
virtual void finishEvent ()
QSet< REntity::IdgetEntityIds ()
RVector getLastSnap () const
RSnap::Status getStatus () const
virtual void hideUiOptions ()
void reset ()
 RSnap (RSnap::Status s=RSnap::Unknown)
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. More...
virtual void suspendEvent ()
virtual ~RSnap ()

Protected Member Functions

virtual QList< RVectorsnapEntity (QSharedPointer< REntity > entity, const RVector &point, const RBox &queryBox, RGraphicsView &view)=0

Additional Inherited Members

- Public Types inherited from RSnap
enum  Status {
  Unknown, Free, Grid, Endpoint,
  OnEntity, Center, Middle, Distance,
  Intersection, IntersectionManual, Reference, Perpendicular,
  Tangential, Coordinate, CoordinatePolar
 Snap status, returned by snap tools (most importantly auto snap tool) to indicate what snap was used. More...
- Protected Attributes inherited from RSnap
QSet< REntity::IdentityIds
RVector lastSnap
RSnap::Status status

Detailed Description

Base class for entity based snap classes.

This class is available in script environments.

Constructor & Destructor Documentation

RSnapEntityBase::RSnapEntityBase ( RSnap::Status  s)
virtual RSnapEntityBase::~RSnapEntityBase ( )

Member Function Documentation

RVector RSnapEntityBase::snap ( const RVector position,
RGraphicsView view,
double  range = RNANDOUBLE 

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.

Implements RSnap.

RVector RSnapEntityBase::snap ( const RVector position,
RGraphicsView view,
const QSet< REntity::Id > &  candidates,
const RBox queryBox 
virtual QList<RVector> RSnapEntityBase::snapEntity ( QSharedPointer< REntity entity,
const RVector point,
const RBox queryBox,
RGraphicsView view 
protectedpure virtual

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