-
-
Notifications
You must be signed in to change notification settings - Fork 3k
/
qgsrendercontext.sip.in
510 lines (359 loc) · 14.3 KB
/
qgsrendercontext.sip.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsrendercontext.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsRenderContext
{
%Docstring
Contains information about the context of a rendering operation.
The context of a rendering operation defines properties such as
the conversion ratio between screen and map units, the extents
to be rendered etc.
%End
%TypeHeaderCode
#include "qgsrendercontext.h"
%End
public:
QgsRenderContext();
QgsRenderContext( const QgsRenderContext &rh );
enum Flag
{
DrawEditingInfo,
ForceVectorOutput,
UseAdvancedEffects,
UseRenderingOptimization,
DrawSelection,
DrawSymbolBounds,
RenderMapTile,
Antialiasing,
RenderPartialOutput,
RenderPreviewJob,
};
typedef QFlags<QgsRenderContext::Flag> Flags;
enum TextRenderFormat
{
// refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
// https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
TextFormatAlwaysOutlines,
TextFormatAlwaysText,
};
void setFlags( QgsRenderContext::Flags flags );
%Docstring
Set combination of flags that will be used for rendering.
.. versionadded:: 2.14
%End
void setFlag( Flag flag, bool on = true );
%Docstring
Enable or disable a particular flag (other flags are not affected)
.. versionadded:: 2.14
%End
Flags flags() const;
%Docstring
Returns combination of flags used for rendering.
.. versionadded:: 2.14
%End
bool testFlag( Flag flag ) const;
%Docstring
Check whether a particular flag is enabled.
.. versionadded:: 2.14
%End
static QgsRenderContext fromMapSettings( const QgsMapSettings &mapSettings );
%Docstring
create initialized QgsRenderContext instance from given :py:class:`QgsMapSettings`
.. versionadded:: 2.4
%End
static QgsRenderContext fromQPainter( QPainter *painter );
%Docstring
Creates a default render context given a pixel based QPainter destination.
If no painter is specified or the painter has no device, then a default
DPI of 88 will be assumed.
.. versionadded:: 3.0
%End
QPainter *painter();
%Docstring
Returns the destination QPainter for the render operation.
.. seealso:: :py:func:`setPainter`
%End
QgsCoordinateTransform coordinateTransform() const;
%Docstring
Returns the current coordinate transform for the context.
This represents the coordinate transform required to transform a layer
which is being rendered back to the CRS of the rendered map. If no coordinate
transformation is required, or the render context is not associated with
a map layer render, then an invalid coordinate transformation is returned.
.. seealso:: :py:func:`setCoordinateTransform`
%End
const QgsDistanceArea &distanceArea() const;
%Docstring
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
.. versionadded:: 3.0
%End
QgsCoordinateTransformContext transformContext() const;
%Docstring
Returns the context's coordinate transform context, which stores various
information regarding which datum transforms should be used when transforming points
from a source to destination coordinate reference system.
.. seealso:: :py:func:`setTransformContext`
.. versionadded:: 3.0
%End
void setTransformContext( const QgsCoordinateTransformContext &context );
%Docstring
Sets the context's coordinate transform ``context``, which stores various
information regarding which datum transforms should be used when transforming points
from a source to destination coordinate reference system.
.. seealso:: :py:func:`transformContext`
.. versionadded:: 3.0
%End
const QgsPathResolver &pathResolver() const;
%Docstring
Returns the path resolver for conversion between relative and absolute paths
during rendering operations, e.g. for resolving relative symbol paths.
.. seealso:: :py:func:`setPathResolver`
.. versionadded:: 3.0
%End
void setPathResolver( const QgsPathResolver &resolver );
%Docstring
Sets the path ``resolver`` for conversion between relative and absolute paths
during rendering operations, e.g. for resolving relative symbol paths.
.. seealso:: :py:func:`pathResolver`
.. versionadded:: 3.0
%End
const QgsRectangle &extent() const;
%Docstring
When rendering a map layer, calling this method returns the "clipping"
extent for the layer (in the layer's CRS).
This extent is a "worst-case" scenario, which is guaranteed to cover the complete
visible portion of the layer when it is rendered to a map. It is often larger
than the actual visible portion of that layer.
.. warning::
For some layers, depending on the visible extent and the coordinate
transforms involved, this extent will represent the entire globe. This method
should never be used to determine the actual visible extent of a map render.
.. seealso:: :py:func:`setExtent`
.. seealso:: :py:func:`mapExtent`
%End
QgsRectangle mapExtent() const;
%Docstring
Returns the original extent of the map being rendered.
Unlike extent(), this extent is always in the final destination CRS for the map
render and represents the exact bounds of the map being rendered.
.. seealso:: :py:func:`extent`
.. seealso:: :py:func:`setMapExtent`
.. versionadded:: 3.4.8
%End
const QgsMapToPixel &mapToPixel() const;
double scaleFactor() const;
%Docstring
Returns the scaling factor for the render to convert painter units
to physical sizes. This is usually equal to the number of pixels
per millimeter.
.. seealso:: :py:func:`setScaleFactor`
%End
bool renderingStopped() const;
bool forceVectorOutput() const;
bool useAdvancedEffects() const;
%Docstring
Returns ``True`` if advanced effects such as blend modes such be used
%End
void setUseAdvancedEffects( bool enabled );
%Docstring
Used to enable or disable advanced effects such as blend modes
%End
bool drawEditingInformation() const;
double rendererScale() const;
%Docstring
Returns the renderer map scale. This will match the desired scale denominator
for the rendered map, eg 1000.0 for a 1:1000 map render.
.. seealso:: :py:func:`setRendererScale`
%End
QColor selectionColor() const;
bool showSelection() const;
%Docstring
Returns ``True`` if vector selections should be shown in the rendered map
:return: ``True`` if selections should be shown
.. seealso:: :py:func:`setShowSelection`
.. seealso:: :py:func:`selectionColor`
.. versionadded:: 2.4
%End
void setCoordinateTransform( const QgsCoordinateTransform &t );
%Docstring
Sets the current coordinate transform for the context.
This represents the coordinate transform required to transform the layer
which is being rendered back to the CRS of the rendered map.
Set to an invalid QgsCoordinateTransform to indicate that no transformation is required.
.. seealso:: :py:func:`coordinateTransform`
%End
void setMapToPixel( const QgsMapToPixel &mtp );
void setExtent( const QgsRectangle &extent );
%Docstring
When rendering a map layer, calling this method sets the "clipping"
extent for the layer (in the layer's CRS).
This extent should be a "worst-case" scenario, which is guaranteed to
completely cover the entire visible portion of the layer when it is rendered
to the map. It may be larger than the actual visible area, but MUST contain at least the
entire visible area.
.. seealso:: :py:func:`setExtent`
.. seealso:: :py:func:`setMapExtent`
%End
void setMapExtent( const QgsRectangle &extent );
%Docstring
Sets the original ``extent`` of the map being rendered.
Unlike setExtent(), this extent is always in the final destination CRS for the map
render and represents the exact bounds of the map being rendered.
.. seealso:: :py:func:`mapExtent`
.. seealso:: :py:func:`setExtent`
.. versionadded:: 3.4.8
%End
void setDrawEditingInformation( bool b );
void setRenderingStopped( bool stopped );
void setDistanceArea( const QgsDistanceArea &distanceArea );
%Docstring
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
Will be used to convert meter distances to active MapUnit values for QgsUnitTypes.RenderMetersInMapUnits
.. versionadded:: 3.0
%End
void setScaleFactor( double factor );
%Docstring
Sets the scaling factor for the render to convert painter units
to physical sizes. This should usually be equal to the number of pixels
per millimeter.
.. seealso:: :py:func:`scaleFactor`
%End
void setRendererScale( double scale );
%Docstring
Sets the renderer map scale. This should match the desired scale denominator
for the rendered map, eg 1000.0 for a 1:1000 map render.
.. seealso:: :py:func:`rendererScale`
%End
void setPainter( QPainter *p );
%Docstring
Sets the destination QPainter for the render operation. Ownership of the painter
is not transferred and the QPainter destination must stay alive for the duration
of any rendering operations.
.. seealso:: :py:func:`painter`
%End
void setForceVectorOutput( bool force );
void setSelectionColor( const QColor &color );
void setShowSelection( bool showSelection );
%Docstring
Sets whether vector selections should be shown in the rendered map
:param showSelection: set to ``True`` if selections should be shown
.. seealso:: :py:func:`showSelection`
.. seealso:: :py:func:`setSelectionColor`
.. versionadded:: 2.4
%End
bool useRenderingOptimization() const;
%Docstring
Returns ``True`` if the rendering optimization (geometry simplification) can be executed
%End
void setUseRenderingOptimization( bool enabled );
const QgsVectorSimplifyMethod &vectorSimplifyMethod() const;
%Docstring
Added in QGIS v2.4
%End
void setVectorSimplifyMethod( const QgsVectorSimplifyMethod &simplifyMethod );
void setExpressionContext( const QgsExpressionContext &context );
%Docstring
Sets the expression context. This context is used for all expression evaluation
associated with this render context.
.. seealso:: :py:func:`expressionContext`
.. versionadded:: 2.12
%End
QgsExpressionContext &expressionContext();
%Docstring
Gets the expression context. This context should be used for all expression evaluation
associated with this render context.
.. seealso:: :py:func:`setExpressionContext`
.. versionadded:: 2.12
%End
const QgsAbstractGeometry *geometry() const;
%Docstring
Returns pointer to the unsegmentized geometry
%End
void setGeometry( const QgsAbstractGeometry *geometry );
%Docstring
Sets pointer to original (unsegmentized) geometry
%End
void setFeatureFilterProvider( const QgsFeatureFilterProvider *ffp );
%Docstring
Set a filter feature provider used for additional filtering of rendered features.
:param ffp: the filter feature provider
.. seealso:: :py:func:`featureFilterProvider`
.. versionadded:: 2.14
%End
const QgsFeatureFilterProvider *featureFilterProvider() const;
%Docstring
Gets the filter feature provider used for additional filtering of rendered features.
:return: the filter feature provider
.. seealso:: :py:func:`setFeatureFilterProvider`
.. versionadded:: 2.14
%End
void setSegmentationTolerance( double tolerance );
%Docstring
Sets the segmentation tolerance applied when rendering curved geometries
:param tolerance: the segmentation tolerance*
%End
double segmentationTolerance() const;
%Docstring
Gets the segmentation tolerance applied when rendering curved geometries
%End
void setSegmentationToleranceType( QgsAbstractGeometry::SegmentationToleranceType type );
%Docstring
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
:param type: the segmentation tolerance typename*
%End
QgsAbstractGeometry::SegmentationToleranceType segmentationToleranceType() const;
%Docstring
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
%End
double convertToPainterUnits( double size, QgsUnitTypes::RenderUnit unit, const QgsMapUnitScale &scale = QgsMapUnitScale() ) const;
%Docstring
Converts a size from the specified units to painter units (pixels). The conversion respects the limits
specified by the optional scale parameter.
.. seealso:: :py:func:`convertToMapUnits`
.. versionadded:: 3.0
%End
double convertToMapUnits( double size, QgsUnitTypes::RenderUnit unit, const QgsMapUnitScale &scale = QgsMapUnitScale() ) const;
%Docstring
Converts a size from the specified units to map units. The conversion respects the limits
specified by the optional scale parameter.
.. seealso:: :py:func:`convertToPainterUnits`
.. versionadded:: 3.0
%End
double convertFromMapUnits( double sizeInMapUnits, QgsUnitTypes::RenderUnit outputUnit ) const;
%Docstring
Converts a size from map units to the specified units.
.. seealso:: :py:func:`convertToMapUnits`
.. versionadded:: 3.0
%End
double convertMetersToMapUnits( double meters ) const;
%Docstring
Convert meter distances to active MapUnit values for QgsUnitTypes.RenderMetersInMapUnits
\note
When the sourceCrs() is geographic, the center of the Extent will be used
.. versionadded:: 3.0
%End
TextRenderFormat textRenderFormat() const;
%Docstring
Returns the text render format, which dictates how text is rendered (e.g. as paths or real text objects).
.. seealso:: :py:func:`setTextRenderFormat`
.. versionadded:: 3.4.3
%End
void setTextRenderFormat( TextRenderFormat format );
%Docstring
Sets the text render ``format``, which dictates how text is rendered (e.g. as paths or real text objects).
.. seealso:: :py:func:`textRenderFormat`
.. versionadded:: 3.4.3
%End
};
QFlags<QgsRenderContext::Flag> operator|(QgsRenderContext::Flag f1, QFlags<QgsRenderContext::Flag> f2);
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsrendercontext.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/