Skip to content

RRestrictAngleLength

Class in Snap Module
Header: #include <src/snap/RRestrictAngleLength.h>
Inherits: RSnapRestriction

Angle and length snap restriction implementation.

Scriptable: This class is available in script environments.

\generateScriptShell

enum AngleLengthMode { None, Angle, Length, AngleLength }
RRestrictAngleLength(RDocumentInterface *documentInterface, double baseAngle, double angle, double baseLength, double length)
RRestrictAngleLength(RDocumentInterface *documentInterface=NULL)
virtual ~RRestrictAngleLength()
virtual RVector restrictSnap(const RVector &position, const RVector &relativeZero)
virtual void setAngle(double a)
virtual void setBaseAngle(double a)
virtual void setBaseLength(double l)
virtual void setLength(double l)
virtual void setRepeatAngle(bool on)
virtual void setRepeatLength(bool on)
virtual void setRestrictAngle(bool on)
virtual void setRestrictLength(bool on)
double angle
double baseAngle
double baseLength
double length
AngleLengthMode mode
bool repeatAngle
bool repeatLength

enum AngleLengthMode
Value Description
None
Angle
Length
AngleLength

RRestrictAngleLength::RRestrictAngleLength(RDocumentInterface *documentInterface, double baseAngle, double angle, double baseLength, double length)

inline

RRestrictAngleLength::RRestrictAngleLength(RDocumentInterface *documentInterface=NULL)

inline

virtual RRestrictAngleLength::~RRestrictAngleLength()

virtual inline

virtual RVector RRestrictAngleLength::restrictSnap(const RVector &position, const RVector &relativeZero)

virtual

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.

Reimplemented from restrictSnap.

virtual void RRestrictAngleLength::setAngle(double a)

virtual inline

virtual void RRestrictAngleLength::setBaseAngle(double a)

virtual inline

virtual void RRestrictAngleLength::setBaseLength(double l)

virtual inline

virtual void RRestrictAngleLength::setLength(double l)

virtual inline

virtual void RRestrictAngleLength::setRepeatAngle(bool on)

virtual inline

virtual void RRestrictAngleLength::setRepeatLength(bool on)

virtual inline

virtual void RRestrictAngleLength::setRestrictAngle(bool on)

virtual inline

virtual void RRestrictAngleLength::setRestrictLength(bool on)

virtual inline

double RRestrictAngleLength::angle

protected

double RRestrictAngleLength::baseAngle

protected

double RRestrictAngleLength::baseLength

protected

double RRestrictAngleLength::length

protected

AngleLengthMode RRestrictAngleLength::mode

protected

bool RRestrictAngleLength::repeatAngle

protected

bool RRestrictAngleLength::repeatLength

protected