QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RDimStyleProxyBasic Class Reference

Proxy for advanced dimension style functionality and rendering. More...

#include <RDimStyleProxyBasic.h>

Inheritance diagram for RDimStyleProxyBasic:
RDimStyleProxy

Public Member Functions

 RDimStyleProxyBasic ()
 
virtual void render (const RDimStyle &dimStyle, const REntityData &entity, bool preview, bool forceSelected)
 Copyright (c) 2011-2021 by Andrew Mustun.
 
virtual ~RDimStyleProxyBasic ()
 
- Public Member Functions inherited from RDimStyleProxy
virtual ~RDimStyleProxy ()
 

Protected Member Functions

virtual void adjustExtensionLineFixLength (RLine &extLine1, RLine &extLine2, bool addDimExe=true) const
 
virtual void breakUpDimArc (QList< QSharedPointer< RShape > > &shapes, QSharedPointer< RArc > dimArc)
 
virtual QList< QSharedPointer< RShape > > getArrow (const RVector &position, double direction) const
 
virtual QList< QSharedPointer< RShape > > getDimensionLineShapes (const RVector &p1, const RVector &p2, bool arrow1, bool arrow2, double angleHint=RNANDOUBLE) const
 Creates a dimensioning line (line with one, two or no arrows).
 
virtual RPolyline getTextBox (const RDimensionData &dimensionData, double *width=NULL) const
 
virtual bool hasSpaceForArrows (double dimLineLength) const
 
virtual void renderDimAligned ()
 
virtual void renderDimAngular ()
 
virtual void renderDimDiametric ()
 
virtual void renderDimOrdinate ()
 
virtual void renderDimRadial ()
 
virtual void renderDimRotated ()
 
virtual void renderPrivate (const RDimStyle &dimStyle, const REntityData &entity, bool preview, bool forceSelected)
 
virtual void updateOutsideArrow (const RVector &p1, const RVector &p2)
 
virtual void updateTextPosition (const QString &text, double textWidth, const RVector &dimLine1, const RVector &dimLine2, bool corrected, double angleHint=RNANDOUBLE)
 

Protected Attributes

const RDimensionDatadimensionData
 
const RDimStyledimStyle
 
const RDocumentdocument
 
bool forceSelected
 
bool outsideArrow1
 
bool outsideArrow2
 
bool preview
 

Detailed Description

Proxy for advanced dimension style functionality and rendering.

May be implemented by a plugin.

Constructor & Destructor Documentation

◆ RDimStyleProxyBasic()

RDimStyleProxyBasic::RDimStyleProxyBasic ( )
inline

◆ ~RDimStyleProxyBasic()

virtual RDimStyleProxyBasic::~RDimStyleProxyBasic ( )
inlinevirtual

Member Function Documentation

◆ adjustExtensionLineFixLength()

void RDimStyleProxyBasic::adjustExtensionLineFixLength ( RLine & extLine1,
RLine & extLine2,
bool addDimExe = true ) const
protectedvirtual

◆ breakUpDimArc()

virtual void RDimStyleProxyBasic::breakUpDimArc ( QList< QSharedPointer< RShape > > & shapes,
QSharedPointer< RArc > dimArc )
inlineprotectedvirtual

◆ getArrow()

QList< QSharedPointer< RShape > > RDimStyleProxyBasic::getArrow ( const RVector & position,
double direction ) const
protectedvirtual

◆ getDimensionLineShapes()

QList< QSharedPointer< RShape > > RDimStyleProxyBasic::getDimensionLineShapes ( const RVector & p1,
const RVector & p2,
bool arrow1,
bool arrow2,
double angleHint = RNANDOUBLE ) const
protectedvirtual

Creates a dimensioning line (line with one, two or no arrows).

◆ getTextBox()

virtual RPolyline RDimStyleProxyBasic::getTextBox ( const RDimensionData & dimensionData,
double * width = NULL ) const
inlineprotectedvirtual

◆ hasSpaceForArrows()

bool RDimStyleProxyBasic::hasSpaceForArrows ( double dimLineLength) const
protectedvirtual

◆ render()

void RDimStyleProxyBasic::render ( const RDimStyle & dimStyle,
const REntityData & entityData,
bool preview,
bool forceSelected )
virtual

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

◆ renderDimAligned()

void RDimStyleProxyBasic::renderDimAligned ( )
protectedvirtual

◆ renderDimAngular()

void RDimStyleProxyBasic::renderDimAngular ( )
protectedvirtual

◆ renderDimDiametric()

void RDimStyleProxyBasic::renderDimDiametric ( )
protectedvirtual

◆ renderDimOrdinate()

void RDimStyleProxyBasic::renderDimOrdinate ( )
protectedvirtual

◆ renderDimRadial()

void RDimStyleProxyBasic::renderDimRadial ( )
protectedvirtual

◆ renderDimRotated()

void RDimStyleProxyBasic::renderDimRotated ( )
protectedvirtual

◆ renderPrivate()

void RDimStyleProxyBasic::renderPrivate ( const RDimStyle & dimStyle,
const REntityData & entity,
bool preview,
bool forceSelected )
protectedvirtual

◆ updateOutsideArrow()

void RDimStyleProxyBasic::updateOutsideArrow ( const RVector & p1,
const RVector & p2 )
protectedvirtual

◆ updateTextPosition()

void RDimStyleProxyBasic::updateTextPosition ( const QString & text,
double textWidth,
const RVector & dimLine1,
const RVector & dimLine2,
bool corrected,
double angleHint = RNANDOUBLE )
protectedvirtual
Returns
Text position

Member Data Documentation

◆ dimensionData

const RDimensionData* RDimStyleProxyBasic::dimensionData
protected

◆ dimStyle

const RDimStyle* RDimStyleProxyBasic::dimStyle
protected

◆ document

const RDocument* RDimStyleProxyBasic::document
protected

◆ forceSelected

bool RDimStyleProxyBasic::forceSelected
protected

◆ outsideArrow1

bool RDimStyleProxyBasic::outsideArrow1
mutableprotected

◆ outsideArrow2

bool RDimStyleProxyBasic::outsideArrow2
mutableprotected

◆ preview

bool RDimStyleProxyBasic::preview
protected

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