KD Chart 2
[rev.2.7]
src
KDChart
Polar
KDChartPolarDiagram.h
Go to the documentation of this file.
1
/****************************************************************************
2
** Copyright (C) 2001-2020 Klaralvdalens Datakonsult AB. All rights reserved.
3
**
4
** This file is part of the KD Chart library.
5
**
6
** Licensees holding valid commercial KD Chart licenses may use this file in
7
** accordance with the KD Chart Commercial License Agreement provided with
8
** the Software.
9
**
10
**
11
** This file may be distributed and/or modified under the terms of the
12
** GNU General Public License version 2 and version 3 as published by the
13
** Free Software Foundation and appearing in the file LICENSE.GPL.txt included.
14
**
15
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
16
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17
**
18
** Contact info@kdab.com if any conditions of this licensing are not
19
** clear to you.
20
**
21
**********************************************************************/
22
23
#ifndef KDCHARTPOLARDIAGRAM_H
24
#define KDCHARTPOLARDIAGRAM_H
25
26
27
#include "
KDChartPosition.h
"
28
#include "
KDChartAbstractPolarDiagram.h
"
29
30
QT_BEGIN_NAMESPACE
31
class
QPolygonF;
32
QT_END_NAMESPACE
33
34
namespace
KDChart
{
35
39
class
KDCHART_EXPORT
PolarDiagram
:
public
AbstractPolarDiagram
40
{
41
Q_OBJECT
42
43
Q_DISABLE_COPY(
PolarDiagram
)
44
KDCHART_DECLARE_DERIVED_DIAGRAM
(
PolarDiagram
,
PolarCoordinatePlane
)
45
46
public
:
47
explicit
PolarDiagram
(
48
QWidget
* parent = 0,
PolarCoordinatePlane
* plane = 0 );
49
~
PolarDiagram
()
override
;
50
51
protected
:
52
// Implement AbstractDiagram
54
void
paint (
PaintContext
* paintContext )
override
;
55
56
public
:
58
void
resize (
const
QSizeF& area )
override
;
59
60
// Implement AbstractPolarDiagram
62
qreal valueTotals ()
const override
;
64
qreal numberOfValuesPerDataset()
const override
;
66
qreal numberOfGridRings()
const override
;
67
68
virtual
PolarDiagram
* clone()
const
;
69
71
void
setZeroDegreePosition(
int
degrees );
73
int
zeroDegreePosition()
const
;
74
75
void
setRotateCircularLabels(
bool
rotateCircularLabels );
76
bool
rotateCircularLabels()
const
;
77
81
void
setCloseDatasets(
bool
closeDatasets );
82
bool
closeDatasets()
const
;
83
84
void
setShowDelimitersAtPosition(
Position
position,
85
bool
showDelimiters );
86
void
setShowLabelsAtPosition(
Position
position,
87
bool
showLabels );
88
89
bool
showDelimitersAtPosition(
Position
position )
const
;
90
91
bool
showLabelsAtPosition(
Position
position )
const
;
92
93
virtual
void
paint (
PaintContext
* paintContext,
94
bool
calculateListAndReturnScale,
95
qreal& newZoomX, qreal& newZoomY );
// KDChart 3: references -> pointers
96
97
protected
:
99
const
QPair<QPointF, QPointF>
calculateDataBoundaries()
const override
;
100
void
paintEvent ( QPaintEvent* )
override
;
101
void
resizeEvent ( QResizeEvent* )
override
;
102
virtual
void
paintPolarMarkers(
PaintContext
* ctx,
const
QPolygonF& polygon );
103
104
};
// End of class PolarDiagram
105
106
}
107
108
109
#endif // KDCHARTPOLARDIAGRAM_H
QWidget
Class only listed here to document inheritance of some KDChart classes.
KDChart::Position
Defines a position, using compass terminology.
Definition:
KDChartPosition.h:76
KDChart
Definition:
KDChartAbstractCartesianDiagram.h:30
KDChart::PolarCoordinatePlane
Polar coordinate plane.
Definition:
KDChartPolarCoordinatePlane.h:37
KDChart::PaintContext
Stores information about painting diagrams.
Definition:
KDChartPaintContext.h:42
KDChart::PolarDiagram
PolarDiagram defines a common polar diagram.
Definition:
KDChartPolarDiagram.h:40
KDCHART_DECLARE_DERIVED_DIAGRAM
#define KDCHART_DECLARE_DERIVED_DIAGRAM(X, PLANE)
Definition:
KDChartGlobal.h:113
KDChart::AbstractPolarDiagram
Base class for diagrams based on a polar coordinate system.
Definition:
KDChartAbstractPolarDiagram.h:37
KDChartAbstractPolarDiagram.h
QPair
Definition:
KDChartWidget.h:35
KDChartPosition.h
Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-chart/