QCAD
Open Source 2D CAD
RDimAngularEntity Class Reference

Aligned dimension entity class. More...

#include <RDimAngularEntity.h>

Inheritance diagram for RDimAngularEntity:
RDimensionEntity REntity RObject

Public Member Functions

virtual RDimAngularEntityclone () const
 
virtual RDimAngularDatagetData ()
 
virtual const RDimAngularDatagetData () const
 
RVector getDimArcPosition () const
 
RVector getExtensionLine1End () const
 
RVector getExtensionLine1Start () const
 
RVector getExtensionLine2End () const
 
RVector getExtensionLine2Start () const
 
QPair< QVariant, RPropertyAttributesgetProperty (RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false)
 
virtual RS::EntityType getType () const
 
 RDimAngularEntity (RDocument *document, const RDimAngularData &data, RObject::Id objectId=RObject::INVALID_ID)
 
void setData (RDimAngularData &d)
 
void setDimArcPosition (const RVector &p)
 
void setExtensionLine1End (const RVector &p)
 
void setExtensionLine1Start (const RVector &p)
 
void setExtensionLine2End (const RVector &p)
 
void setExtensionLine2Start (const RVector &p)
 
bool setProperty (RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
 Sets the given property to the given value. More...
 
virtual ~RDimAngularEntity ()
 
- Public Member Functions inherited from RDimensionEntity
virtual void exportEntity (RExporter &e, bool preview=false, bool forceSelected=false) const
 Exports the entity to the given exporter. More...
 
RVector getDefinitionPoint () const
 
double getDimScale () const
 
QString getFontName () const
 
double getLinearFactor () const
 
double getLineSpacingFactor () const
 
RS::TextLineSpacingStyle getLineSpacingStyle () const
 
QString getMeasurement (bool resolveAutoMeasurement=true) const
 
QPair< QVariant, RPropertyAttributesgetProperty (RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false)
 
QString getText () const
 
double getTextAngle () const
 
RTextData getTextData () const
 
RVector getTextPosition () const
 
bool hasCustomTextPosition () const
 
virtual bool isValid () const
 
 RDimensionEntity (RDocument *document, RObject::Id objectId=RObject::INVALID_ID)
 
void setCustomTextPosition (bool on)
 
void setDefinitionPoint (const RVector &p)
 
void setDimScale (double f)
 
void setFontName (const QString &fn)
 
void setLinearFactor (double f)
 
bool setProperty (RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
 Sets the given property to the given value. More...
 
void setText (const QString &t)
 
void setTextPosition (const RVector &p)
 
virtual ~RDimensionEntity ()
 
- Public Member Functions inherited from REntity
virtual const RShapecastToConstShape () const
 
virtual RShapecastToShape ()
 
void copyAttributesFrom (REntity *entity, bool copyBlockId=true)
 Copies all attributes (layer, block, color, line weight, line style) from the given entity. More...
 
virtual bool flipHorizontal ()
 
virtual bool flipVertical ()
 
RBlock::Id getBlockId () const
 
QString getBlockName () const
 
virtual RBox getBoundingBox (bool ignoreEmpty=false) const
 
virtual QList< RBoxgetBoundingBoxes (bool ignoreEmpty=false) const
 
virtual QList< RVectorgetCenterPoints (const RBox &queryBox=RDEFAULT_RBOX) const
 
virtual RVector getClosestPointOnEntity (const RVector &point, double range=RNANDOUBLE, bool limited=true) const
 
virtual QSharedPointer< RShapegetClosestShape (const RVector &pos, double range=RNANDOUBLE, bool ignoreComplex=false) const
 
virtual QSharedPointer< RShapegetClosestSimpleShape (const RVector &pos, double range=RNANDOUBLE) const
 
RColor getColor () const
 
RColor getColor (bool resolve, const QStack< REntity * > &blockRefStack)
 
virtual int getComplexity () const
 
virtual double getDistanceTo (const RVector &point, bool limited=true, double range=0.0, bool draft=false, double strictRange=RMAXDOUBLE) const
 
int getDrawOrder () const
 
virtual QList< RVectorgetEndPoints (const RBox &queryBox=RDEFAULT_RBOX) const
 
virtual RPolyline getHull (double offset) const
 
virtual QList< RVectorgetInternalReferencePoints (RS::ProjectionRenderingHint hint=RS::RenderTop) const
 Can be overwritten to return internal, resolved reference points. More...
 
virtual QList< RVectorgetIntersectionPoints (const REntity &other, bool limited=true, const RBox &queryBox=RDEFAULT_RBOX, bool ignoreComplex=true) const
 
virtual QList< RVectorgetIntersectionPoints (const RShape &shape, bool limited=true, const RBox &queryBox=RDEFAULT_RBOX, bool ignoreComplex=true) const
 
virtual QList< RVectorgetIntersectionPointsWithShape (const RShape &shape, bool limited=true, const RBox &queryBox=RDEFAULT_RBOX) const
 Make getIntersectionPoints with shape parameter accessible for script wrappers. More...
 
RLayer::Id getLayerId () const
 
QString getLayerName () const
 
RLinetype::Id getLinetypeId () const
 
RLinetype::Id getLinetypeId (bool resolve, const QStack< REntity * > &blockRefStack) const
 
RLinetypePattern getLinetypePattern () const
 
double getLinetypeScale () const
 
RLineweight::Lineweight getLineweight () const
 
RLineweight::Lineweight getLineweight (bool resolve, const QStack< REntity * > &blockRefStack) const
 
double getLineweightInUnits (const QStack< REntity * > &blockRefStack) const
 
virtual QList< RVectorgetMiddlePoints (const RBox &queryBox=RDEFAULT_RBOX) const
 
REntity::Id getParentId () const
 
virtual RVector getPointOnEntity () const
 
virtual QList< RVectorgetPointsWithDistanceToEnd (double distance, RS::From from=RS::FromAny, const RBox &queryBox=RDEFAULT_RBOX) const
 
virtual QList< RVectorgetReferencePoints (RS::ProjectionRenderingHint hint=RS::RenderTop) const
 
virtual QList< QSharedPointer< RShape > > getShapes (const RBox &queryBox=RDEFAULT_RBOX, bool ignoreComplex=false) const
 
virtual RVector getVectorTo (const RVector &point, bool limited=true, double strictRange=RMAXDOUBLE) const
 
virtual bool intersectsWith (const RShape &shape) const
 
bool isEditable (bool allowInvisible=false) const
 
virtual bool isInside (const RBox &box) const
 
virtual bool isOnEntity (const RVector &point, bool limited=true, double tolerance=RDEFAULT_TOLERANCE_1E_MIN4) const
 
bool isSelected () const
 Reimplemented by entities that are part of a block reference but not stored as part of the block definition (currently only block attributes). More...
 
virtual bool isSelectedForPropertyEditing ()
 
bool isVisible () const
 
virtual bool mirror (const RLine &axis)
 
virtual bool mirror (const RVector &axis1, const RVector &axis2)
 
virtual bool move (const RVector &offset)
 Moves this entity by the given offset. More...
 
virtual bool moveReferencePoint (const RVector &referencePoint, const RVector &targetPoint)
 Moves the given reference point to the given target point or does nothing if this entity has no reference point as the given location. More...
 
 REntity (RDocument *document, Id objectId=-1)
 
virtual bool rotate (double rotation, const RVector &center=RDEFAULT_RVECTOR)
 
virtual bool scale (const RVector &scaleFactors, const RVector &center=RDEFAULT_RVECTOR)
 
virtual bool scale (double scaleFactor, const RVector &center=RDEFAULT_RVECTOR)
 
void setBlockId (RBlock::Id blockId)
 
void setColor (const RColor &color)
 
void setDocument (RDocument *document)
 
void setDrawOrder (int drawOrder)
 Sets the draw order of this entity. More...
 
void setLayerId (RLayer::Id layerId)
 
void setLinetypeId (RLinetype::Id linetypeId)
 
void setLinetypePattern (const RLinetypePattern &linetypePattern)
 
void setLinetypeScale (double linetypeScale)
 
void setLineweight (RLineweight::Lineweight lineweight)
 
void setParentId (REntity::Id parentId)
 
virtual void setSelected (bool on)
 Selects or deselects this entity. More...
 
virtual bool stretch (const RPolyline &area, const RVector &offset)
 Stretches the end points of this entity that are inside area by offset. More...
 
void update () const
 Entities can reimplement this function to invalidate any internal cache (mark the entity as dirty). More...
 
virtual ~REntity ()
 
- Public Member Functions inherited from RObject
void dump ()
 
QMap< QString, QVariantMap > getCustomProperties () const
 
QVariant getCustomProperty (const QString &title, const QString &key, const QVariant &defaultValue=RDEFAULT_QVARIANT)
 
QStringList getCustomPropertyKeys (const QString &title) const
 
QStringList getCustomPropertyTitles () const
 
virtual QSet< RPropertyTypeIdgetCustomPropertyTypeIds () const
 
RDocumentgetDocument ()
 
const RDocumentgetDocument () const
 
RObject::Handle getHandle () const
 
RObject::Id getId () const
 
virtual QSet< RPropertyTypeIdgetPropertyTypeIds () const
 
virtual bool hasPropertyType (RPropertyTypeId propertyTypeId)
 
bool isProtected () const
 
bool isUndone () const
 
void removeCustomProperty (const QString &title, const QString &key)
 Removes the custom property with the given name. More...
 
 RObject (RDocument *document=NULL, Id id=INVALID_ID)
 
void setCustomProperty (const QString &title, const QString &key, const QVariant &value)
 Sets a custom property with the given name. More...
 
void setDocument (RDocument *document)
 
void setProtected (bool on)
 
virtual void setUndone (bool on)
 
virtual ~RObject ()
 

Static Public Member Functions

static QSet< RPropertyTypeIdgetStaticPropertyTypeIds ()
 
static void init ()
 
- Static Public Member Functions inherited from RDimensionEntity
static QSet< RPropertyTypeIdgetStaticPropertyTypeIds ()
 
static void init ()
 
- Static Public Member Functions inherited from REntity
static QSet< RPropertyTypeIdgetStaticPropertyTypeIds ()
 
static void init ()
 
static bool isComplex (const RS::EntityType type)
 
static bool isDimension (const RS::EntityType type)
 
- Static Public Member Functions inherited from RObject
static void init ()
 
template<class T >
static bool setMember (T &variable, const QVariant &value, bool condition=true)
 

Static Public Attributes

static RPropertyTypeId PropertyBlock
 
static RPropertyTypeId PropertyColor
 
static RPropertyTypeId PropertyCustom
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
static RPropertyTypeId PropertyDimArcPositionX
 
static RPropertyTypeId PropertyDimArcPositionY
 
static RPropertyTypeId PropertyDimArcPositionZ
 
static RPropertyTypeId PropertyDrawOrder
 
static RPropertyTypeId PropertyExtensionLine1EndX
 
static RPropertyTypeId PropertyExtensionLine1EndY
 
static RPropertyTypeId PropertyExtensionLine1EndZ
 
static RPropertyTypeId PropertyExtensionLine1StartX
 
static RPropertyTypeId PropertyExtensionLine1StartY
 
static RPropertyTypeId PropertyExtensionLine1StartZ
 
static RPropertyTypeId PropertyExtensionLine2EndX
 
static RPropertyTypeId PropertyExtensionLine2EndY
 
static RPropertyTypeId PropertyExtensionLine2EndZ
 
static RPropertyTypeId PropertyExtensionLine2StartX
 
static RPropertyTypeId PropertyExtensionLine2StartY
 
static RPropertyTypeId PropertyExtensionLine2StartZ
 
static RPropertyTypeId PropertyFontName
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyLayer
 
static RPropertyTypeId PropertyLinetype
 
static RPropertyTypeId PropertyLinetypeScale
 
static RPropertyTypeId PropertyLineweight
 
static RPropertyTypeId PropertyLowerTolerance
 
static RPropertyTypeId PropertyMeasuredValue
 
static RPropertyTypeId PropertyMiddleOfTextX
 
static RPropertyTypeId PropertyMiddleOfTextY
 
static RPropertyTypeId PropertyMiddleOfTextZ
 
static RPropertyTypeId PropertyProtected
 
static RPropertyTypeId PropertyText
 
static RPropertyTypeId PropertyType
 
static RPropertyTypeId PropertyUpperTolerance
 
- Static Public Attributes inherited from RDimensionEntity
static RPropertyTypeId PropertyAutoLabel
 
static RPropertyTypeId PropertyAutoTextPos
 
static RPropertyTypeId PropertyBlock
 
static RPropertyTypeId PropertyColor
 
static RPropertyTypeId PropertyCustom
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
static RPropertyTypeId PropertyDefinitionPointX
 
static RPropertyTypeId PropertyDefinitionPointY
 
static RPropertyTypeId PropertyDefinitionPointZ
 
static RPropertyTypeId PropertyDimScale
 
static RPropertyTypeId PropertyDrawOrder
 
static RPropertyTypeId PropertyFontName
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyLayer
 
static RPropertyTypeId PropertyLinearFactor
 
static RPropertyTypeId PropertyLinetype
 
static RPropertyTypeId PropertyLinetypeScale
 
static RPropertyTypeId PropertyLineweight
 
static RPropertyTypeId PropertyLowerTolerance
 
static RPropertyTypeId PropertyMeasuredValue
 
static RPropertyTypeId PropertyMiddleOfTextX
 
static RPropertyTypeId PropertyMiddleOfTextY
 
static RPropertyTypeId PropertyMiddleOfTextZ
 
static RPropertyTypeId PropertyProtected
 
static RPropertyTypeId PropertyText
 
static RPropertyTypeId PropertyType
 
static RPropertyTypeId PropertyUpperTolerance
 
- Static Public Attributes inherited from REntity
static RPropertyTypeId PropertyBlock
 
static RPropertyTypeId PropertyColor
 
static RPropertyTypeId PropertyCustom
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
static RPropertyTypeId PropertyDrawOrder
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyLayer
 
static RPropertyTypeId PropertyLinetype
 
static RPropertyTypeId PropertyLinetypeScale
 
static RPropertyTypeId PropertyLineweight
 
static RPropertyTypeId PropertyMaxX
 
static RPropertyTypeId PropertyMaxY
 
static RPropertyTypeId PropertyMinX
 
static RPropertyTypeId PropertyMinY
 
static RPropertyTypeId PropertyProtected
 
static RPropertyTypeId PropertySizeX
 
static RPropertyTypeId PropertySizeY
 
static RPropertyTypeId PropertyType
 
- Static Public Attributes inherited from RObject
static const Handle INVALID_HANDLE = -1
 
static const Id INVALID_ID = -1
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
static RPropertyTypeId PropertyCustom
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyProtected
 

Protected Member Functions

virtual void print (QDebug dbg) const
 Stream operator for QDebug. More...
 
- Protected Member Functions inherited from RObject
void setHandle (RObject::Handle h)
 
void setId (RObject::Id id)
 

Protected Attributes

RDimAngularData data
 

Additional Inherited Members

- Public Types inherited from RObject
typedef int Handle
 
typedef int Id
 
enum  XYZ { X, Y, Z }
 
- Static Protected Member Functions inherited from RObject
static bool setMember (QString &variable, const QVariant &value, bool condition=true)
 Sets the given property. More...
 
static bool setMember (double &variable, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
static bool setMember (int &variable, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
static bool setMember (bool &variable, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
static bool setMember (QList< double > &variable, const QVariant &value, bool condition)
 
static bool setMemberVector (QList< RVector > &variable, const QVariant &value, RObject::XYZ xyz)
 
static bool setMemberX (QList< RVector > &variable, const QVariant &value, bool condition=true)
 
static bool setMemberY (QList< RVector > &variable, const QVariant &value, bool condition=true)
 
static bool setMemberZ (QList< RVector > &variable, const QVariant &value, bool condition=true)
 

Detailed Description

Aligned dimension entity class.

Scriptable:
This class is available in script environments.
Shared Pointer Support:
Objects can be used in QSharedPointer.

Constructor & Destructor Documentation

RDimAngularEntity::RDimAngularEntity ( RDocument document,
const RDimAngularData data,
RObject::Id  objectId = RObject::INVALID_ID 
)
RDimAngularEntity::~RDimAngularEntity ( )
virtual

Member Function Documentation

virtual RDimAngularEntity* RDimAngularEntity::clone ( ) const
inlinevirtual

Implements REntity.

virtual RDimAngularData& RDimAngularEntity::getData ( )
inlinevirtual
Returns
Reference to the data object of the entity.

Implements RDimensionEntity.

virtual const RDimAngularData& RDimAngularEntity::getData ( ) const
inlinevirtual
Returns
Const reference to the data object of the entity.

Implements RDimensionEntity.

RVector RDimAngularEntity::getDimArcPosition ( ) const
inline
RVector RDimAngularEntity::getExtensionLine1End ( ) const
inline
RVector RDimAngularEntity::getExtensionLine1Start ( ) const
inline
RVector RDimAngularEntity::getExtensionLine2End ( ) const
inline
RVector RDimAngularEntity::getExtensionLine2Start ( ) const
inline
QPair< QVariant, RPropertyAttributes > RDimAngularEntity::getProperty ( RPropertyTypeId propertyTypeId,
bool  humanReadable = false,
bool  noAttributes = false 
)
virtual
Returns
The value and attributes of the given property or an invalid property if this property owner has no property with the given ID.

Reimplemented from REntity.

static QSet<RPropertyTypeId> RDimAngularEntity::getStaticPropertyTypeIds ( )
inlinestatic
virtual RS::EntityType RDimAngularEntity::getType ( ) const
inlinevirtual

Reimplemented from RDimensionEntity.

void RDimAngularEntity::init ( )
static
void RDimAngularEntity::print ( QDebug  dbg) const
protectedvirtual

Stream operator for QDebug.

Reimplemented from RDimensionEntity.

void RDimAngularEntity::setData ( RDimAngularData d)
inline
void RDimAngularEntity::setDimArcPosition ( const RVector p)
inline
void RDimAngularEntity::setExtensionLine1End ( const RVector p)
inline
void RDimAngularEntity::setExtensionLine1Start ( const RVector p)
inline
void RDimAngularEntity::setExtensionLine2End ( const RVector p)
inline
void RDimAngularEntity::setExtensionLine2Start ( const RVector p)
inline
bool RDimAngularEntity::setProperty ( RPropertyTypeId  propertyTypeId,
const QVariant &  value,
RTransaction transaction = NULL 
)
virtual

Sets the given property to the given value.

If this property owner does not know a property with that ID, it is up to the property owner what happens. The property might be added into a list of dynamic properties or dropped.

Returns
True if the property owner was modified in any way, false otherwise.

Reimplemented from REntity.

Member Data Documentation

RDimAngularData RDimAngularEntity::data
protected
RPropertyTypeId RDimAngularEntity::PropertyBlock
static
RPropertyTypeId RDimAngularEntity::PropertyColor
static
RPropertyTypeId RDimAngularEntity::PropertyCustom
static

Copyright (c) 2011-2015 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.

RPropertyTypeId RDimAngularEntity::PropertyDimArcPositionX
static
RPropertyTypeId RDimAngularEntity::PropertyDimArcPositionY
static
RPropertyTypeId RDimAngularEntity::PropertyDimArcPositionZ
static
RPropertyTypeId RDimAngularEntity::PropertyDrawOrder
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine1EndX
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine1EndY
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine1EndZ
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine1StartX
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine1StartY
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine1StartZ
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine2EndX
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine2EndY
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine2EndZ
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine2StartX
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine2StartY
static
RPropertyTypeId RDimAngularEntity::PropertyExtensionLine2StartZ
static
RPropertyTypeId RDimAngularEntity::PropertyFontName
static
RPropertyTypeId RDimAngularEntity::PropertyHandle
static
RPropertyTypeId RDimAngularEntity::PropertyLayer
static
RPropertyTypeId RDimAngularEntity::PropertyLinetype
static
RPropertyTypeId RDimAngularEntity::PropertyLinetypeScale
static
RPropertyTypeId RDimAngularEntity::PropertyLineweight
static
RPropertyTypeId RDimAngularEntity::PropertyLowerTolerance
static
RPropertyTypeId RDimAngularEntity::PropertyMeasuredValue
static
RPropertyTypeId RDimAngularEntity::PropertyMiddleOfTextX
static
RPropertyTypeId RDimAngularEntity::PropertyMiddleOfTextY
static
RPropertyTypeId RDimAngularEntity::PropertyMiddleOfTextZ
static
RPropertyTypeId RDimAngularEntity::PropertyProtected
static
RPropertyTypeId RDimAngularEntity::PropertyText
static
RPropertyTypeId RDimAngularEntity::PropertyType
static
RPropertyTypeId RDimAngularEntity::PropertyUpperTolerance
static

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