QGIS API Documentation
4.3.0-Master (52aa6503bed)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
analysis
processing
qgsalgorithmextrude.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsalgorithmextrude.h
3
---------------------
4
begin : April 2026
5
copyright : (C) 2026 by Jean Felder
6
email : jean dot felder at oslandia dot com
7
***************************************************************************/
8
9
/***************************************************************************
10
* *
11
* This program is free software; you can redistribute it and/or modify *
12
* it under the terms of the GNU General Public License as published by *
13
* the Free Software Foundation; either version 2 of the License, or *
14
* (at your option) any later version. *
15
* *
16
***************************************************************************/
17
18
#ifndef QGSALGORITHMEXTRUDE_H
19
#define QGSALGORITHMEXTRUDE_H
20
21
22
#include "
qgis_sip.h
"
23
#include "
qgsprocessingalgorithm.h
"
24
25
#define SIP_NO_FILE
26
28
29
33
class
QgsExtrudeAlgorithm :
public
QgsProcessingFeatureBasedAlgorithm
34
{
35
public
:
36
QgsExtrudeAlgorithm() =
default
;
37
QString
name
()
const override
;
38
QString
displayName
()
const override
;
39
QStringList
tags
()
const override
;
40
QString
group
()
const override
;
41
QString
groupId
()
const override
;
42
QString
shortHelpString
()
const override
;
43
QString
shortDescription
()
const override
;
44
QgsExtrudeAlgorithm *
createInstance
()
const
override
SIP_FACTORY
;
45
QList<int> inputLayerTypes()
const override
;
46
47
protected
:
48
QString outputName()
const override
;
49
Qgis::ProcessingSourceType
outputLayerType()
const override
;
50
Qgis::WkbType
outputWkbType(
Qgis::WkbType
inputWkbType )
const override
;
51
void
initParameters(
const
QVariantMap & )
override
;
52
bool
prepareAlgorithm(
const
QVariantMap ¶meters,
QgsProcessingContext
&context,
QgsProcessingFeedback
*feedback )
override
;
53
QgsFeatureList
processFeature(
const
QgsFeature
&feature,
QgsProcessingContext
&context,
QgsProcessingFeedback
*feedback )
override
;
54
55
private
:
56
#ifdef WITH_SFCGAL
57
std::optional<QgsGeometry> extrudePolygon(
const
QgsAbstractGeometry
*polygon,
const
QgsVector3D
&extrusion,
const
QgsFeatureId
&featureId,
QgsProcessingFeedback
*feedback );
58
#endif
59
60
private
:
61
#ifdef WITH_SFCGAL
62
double
mExtrudeX = 0.0;
63
bool
mDynamicExtrudeX =
false
;
64
#endif
65
QgsProperty
mExtrudeXProperty;
66
67
#ifdef WITH_SFCGAL
68
double
mExtrudeY = 0.0;
69
bool
mDynamicExtrudeY =
false
;
70
#endif
71
QgsProperty
mExtrudeYProperty;
72
73
#ifdef WITH_SFCGAL
74
double
mExtrudeZ = 0.0;
75
bool
mDynamicExtrudeZ =
false
;
76
#endif
77
QgsProperty
mExtrudeZProperty;
78
};
79
81
#endif
// QGSALGORITHMEXTRUDE_H
Qgis::ProcessingSourceType
ProcessingSourceType
Processing data source types.
Definition
qgis.h:3769
Qgis::WkbType
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition
qgis.h:314
QgsAbstractGeometry
Abstract base class for all geometries.
Definition
qgsabstractgeometry.h:82
QgsFeature
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Definition
qgsfeature.h:60
QgsProcessingAlgorithm::createInstance
virtual QgsProcessingAlgorithm * createInstance() const =0
Creates a new instance of the algorithm class.
QgsProcessingAlgorithm::group
virtual QString group() const
Returns the name of the group this algorithm belongs to.
Definition
qgsprocessingalgorithm.h:259
QgsProcessingAlgorithm::groupId
virtual QString groupId() const
Returns the unique ID of the group this algorithm belongs to.
Definition
qgsprocessingalgorithm.h:268
QgsProcessingAlgorithm::shortHelpString
virtual QString shortHelpString() const
Returns a localised short helper string for the algorithm.
Definition
qgsprocessingalgorithm.cpp:83
QgsProcessingAlgorithm::shortDescription
virtual QString shortDescription() const
Returns an optional translated short description of the algorithm.
Definition
qgsprocessingalgorithm.cpp:78
QgsProcessingAlgorithm::displayName
virtual QString displayName() const =0
Returns the translated algorithm name, which should be used for any user-visible display of the algor...
QgsProcessingAlgorithm::tags
virtual QStringList tags() const
Returns a list of tags which relate to the algorithm, and are used to assist users in searching for s...
Definition
qgsprocessingalgorithm.h:169
QgsProcessingAlgorithm::name
virtual QString name() const =0
Returns the algorithm name, used for identifying the algorithm.
QgsProcessingContext
Contains information about the context in which a processing algorithm is executed.
Definition
qgsprocessingcontext.h:45
QgsProcessingFeatureBasedAlgorithm
An abstract QgsProcessingAlgorithm base class for processing algorithms which operate "feature-by-fea...
Definition
qgsprocessingalgorithm.h:1251
QgsProcessingFeedback
Base class for providing feedback from a processing algorithm.
Definition
qgsprocessingfeedback.h:40
QgsProperty
A store for object properties.
Definition
qgsproperty.h:228
QgsVector3D
A 3D vector (similar to QVector3D) with the difference that it uses double precision instead of singl...
Definition
qgsvector3d.h:33
qgis_sip.h
SIP_FACTORY
#define SIP_FACTORY
Definition
qgis_sip.h:83
QgsFeatureList
QList< QgsFeature > QgsFeatureList
Definition
qgsfeature.h:1289
QgsFeatureId
qint64 QgsFeatureId
64 bit feature ids negative numbers are used for uncommitted/newly added features
Definition
qgsfeatureid.h:32
qgsprocessingalgorithm.h
Generated on
for QGIS API Documentation by
1.17.0