QGIS API Documentation
3.10.0-A Coruña (6c816b4204)
Main Page
Related Pages
Modules
+
Namespaces
Namespace List
+
Namespace Members
+
All
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
w
z
+
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
w
z
Variables
Typedefs
Enumerations
Enumerator
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
2
3
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Functions
2
3
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Typedefs
a
c
e
f
g
h
k
l
m
o
p
r
s
t
u
v
w
+
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
+
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Properties
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
z
+
Related Functions
a
c
d
e
f
g
i
l
m
n
o
p
q
r
s
t
v
+
Files
File List
+
File Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
+
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
u
v
w
z
+
Variables
a
b
c
d
e
g
h
i
l
n
o
p
q
r
s
t
u
w
+
Typedefs
a
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Enumerations
Enumerator
+
Macros
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
w
y
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
src
core
diagram
qgsdiagram.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsdiagram.h
3
---------------------
4
begin : March 2011
5
copyright : (C) 2011 by Marco Hugentobler
6
email : marco dot hugentobler at sourcepole dot ch
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
#ifndef QGSDIAGRAM_H
16
#define QGSDIAGRAM_H
17
18
#include "qgis_core.h"
19
#include "
qgis.h
"
20
#include <QPen>
21
#include <QBrush>
22
#include "
qgsexpression.h
"
//for QMap with QgsExpression
23
24
class
QPainter;
25
class
QPointF;
26
class
QgsDiagramSettings
;
27
class
QgsDiagramInterpolationSettings
;
28
class
QgsFeature
;
29
class
QgsRenderContext
;
30
class
QgsExpressionContext
;
31
class
QgsFields
;
32
class
QgsAttributes
;
33
34
38
class
CORE_EXPORT
QgsDiagram
39
{
40
public
:
41
42
virtual
~QgsDiagram
() { clearCache(); }
43
47
virtual
QgsDiagram
*clone()
const
= 0
SIP_FACTORY
;
48
49
void
clearCache();
50
57
QgsExpression
*getExpression(
const
QString &expression,
const
QgsExpressionContext
&context );
58
60
virtual
void
renderDiagram(
const
QgsFeature
&feature,
QgsRenderContext
&
c
,
const
QgsDiagramSettings
&s, QPointF position ) = 0;
61
65
virtual
QString diagramName()
const
= 0;
67
virtual
QSizeF diagramSize(
const
QgsAttributes
&attributes,
const
QgsRenderContext
&c,
const
QgsDiagramSettings
&s ) = 0;
69
virtual
QSizeF diagramSize(
const
QgsFeature
&feature,
const
QgsRenderContext
&c,
const
QgsDiagramSettings
&s,
const
QgsDiagramInterpolationSettings
&is ) = 0;
70
78
virtual
double
legendSize(
double
value,
const
QgsDiagramSettings
&s,
const
QgsDiagramInterpolationSettings
&is )
const
= 0;
79
80
protected
:
81
85
QgsDiagram
() =
default
;
86
QgsDiagram
(
const
QgsDiagram
&other );
87
94
void
setPenWidth( QPen &pen,
const
QgsDiagramSettings
&s,
const
QgsRenderContext
&c );
95
104
QSizeF sizePainterUnits( QSizeF size,
const
QgsDiagramSettings
&s,
const
QgsRenderContext
&c );
105
114
double
sizePainterUnits(
double
l,
const
QgsDiagramSettings
&s,
const
QgsRenderContext
&c );
115
123
QFont scaledFont(
const
QgsDiagramSettings
&s,
const
QgsRenderContext
&c );
124
132
QSizeF sizeForValue(
double
value,
const
QgsDiagramSettings
&s,
const
QgsDiagramInterpolationSettings
&is )
const
;
133
134
private
:
135
QMap<QString, QgsExpression *> mExpressions;
136
};
137
138
#endif // QGSDIAGRAM_H
QgsExpression
Class for parsing and evaluation of expressions (formerly called "search strings").
Definition:
qgsexpression.h:113
QgsDiagram::~QgsDiagram
virtual ~QgsDiagram()
Definition:
qgsdiagram.h:42
QgsFields
Container of fields for a vector layer.
Definition:
qgsfields.h:42
QgsFeature
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
Definition:
qgsfeature.h:55
qgsexpression.h
c
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into c
Definition:
porting_processing.dox:1
QgsExpressionContext
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Definition:
qgsexpressioncontext.h:371
SIP_FACTORY
#define SIP_FACTORY
Definition:
qgis_sip.h:76
QgsDiagram
Base class for all diagram types.
Definition:
qgsdiagram.h:38
QgsDiagramInterpolationSettings
Additional diagram settings for interpolated size rendering.
Definition:
qgsdiagramrenderer.h:489
QgsRenderContext
Contains information about the context of a rendering operation.
Definition:
qgsrendercontext.h:51
qgis.h
QgsAttributes
A vector of attributes.
Definition:
qgsattributes.h:57
QgsDiagramSettings
Stores the settings for rendering a single diagram.
Definition:
qgsdiagramrenderer.h:378
Generated on Sun Oct 27 2019 00:43:28 for QGIS API Documentation by
1.8.13