Scroll to navigation

QwtRoundScaleDraw(3) Qwt User's Guide QwtRoundScaleDraw(3)

NAME

QwtRoundScaleDraw -
A class for drawing round scales.
 

SYNOPSIS

#include <qwt_round_scale_draw.h>
Inherits QwtAbstractScaleDraw.
Inherited by QwtDialScaleDraw.

Public Member Functions


QwtRoundScaleDraw ()
 
virtual ~QwtRoundScaleDraw ()
 
void setRadius (int radius)
 
int radius () const
 
void moveCenter (double x, double y)
 
void moveCenter (const QPointF &)
 
QPointF center () const
 
void setAngleRange (double angle1, double angle2)
 
virtual double extent (const QFont &) const
 

Protected Member Functions


virtual void drawTick (QPainter *p, double val, double len) const
 
virtual void drawBackbone (QPainter *p) const
 
virtual void drawLabel (QPainter *p, double val) const
 

Detailed Description

A class for drawing round scales.
 
QwtRoundScaleDraw can be used to draw round scales. The circle segment can be adjusted by QwtRoundScaleDraw::setAngleRange(). The geometry of the scale can be specified with QwtRoundScaleDraw::moveCenter() and QwtRoundScaleDraw::setRadius().
After a scale division has been specified as a QwtScaleDiv object using QwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s), the scale can be drawn with the QwtAbstractScaleDraw::draw() member.

Constructor & Destructor Documentation

QwtRoundScaleDraw::QwtRoundScaleDraw ()

Constructor. The range of the scale is initialized to [0, 100], The center is set to (50, 50) with a radius of 50. The angle range is set to [-135, 135].

QwtRoundScaleDraw::~QwtRoundScaleDraw () [virtual]

Destructor.

Member Function Documentation

QPointF QwtRoundScaleDraw::center () const

Get the center of the scale.

void QwtRoundScaleDraw::drawBackbone (QPainter *painter) const [protected, virtual] Draws the baseline of the scale

Parameters:
painter Painter
See also:
drawTick(), drawLabel()
 
Implements QwtAbstractScaleDraw.

void QwtRoundScaleDraw::drawLabel (QPainter *painter, doublevalue) const [protected, virtual] Draws the label for a major scale tick

Parameters:
painter Painter
 
value Value
See also:
drawTick(), drawBackbone()
 
Implements QwtAbstractScaleDraw.

void QwtRoundScaleDraw::drawTick (QPainter *painter, doublevalue, doublelen) const [protected, virtual] Draw a tick

Parameters:
painter Painter
 
value Value of the tick
 
len Lenght of the tick
See also:
drawBackbone(), drawLabel()
 
Implements QwtAbstractScaleDraw.

double QwtRoundScaleDraw::extent (const QFont &font) const [virtual] Calculate the extent of the scale

The extent is the distance between the baseline to the outermost pixel of the scale draw. radius() + extent() is an upper limit for the radius of the bounding circle.
Parameters:
font Font used for painting the labels
See also:
setMinimumExtent(), minimumExtent()
Warning:
The implemented algo is not too smart and calculates only an upper limit, that might be a few pixels too large
 
Implements QwtAbstractScaleDraw.

void QwtRoundScaleDraw::moveCenter (doublex, doubley) [inline]

Move the center of the scale draw, leaving the radius unchanged.

void QwtRoundScaleDraw::moveCenter (const QPointF &center) Move the center of the scale draw, leaving the radius unchanged

Parameters:
center New center
See also:
setRadius()
 

int QwtRoundScaleDraw::radius () const Get the radius

Radius is the radius of the backbone without ticks and labels.
See also:
setRadius(), extent()
 

void QwtRoundScaleDraw::setAngleRange (doubleangle1, doubleangle2)

Adjust the baseline circle segment for round scales. The baseline will be drawn from min(angle1,angle2) to max(angle1, angle2). The default setting is [ -135, 135 ]. An angle of 0 degrees corresponds to the 12 o'clock position, and positive angles count in a clockwise direction.
Parameters:
angle1
 
angle2 boundaries of the angle interval in degrees.
Warning:
The angle range is limited to [-360, 360] degrees. Angles exceeding this range will be clipped.
For angles more than 359 degrees above or below min(angle1, angle2), scale marks will not be drawn.
If you need a counterclockwise scale, use QwtScaleDiv::setRange
 

void QwtRoundScaleDraw::setRadius (intradius) Change of radius the scale

Radius is the radius of the backbone without ticks and labels.
Parameters:
radius New Radius
See also:
moveCenter()
 
 

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.
Fri Apr 15 2011 Version 6.0.0