24 QString QgsInterpolatePointAlgorithm::name()
 const 
   26   return QStringLiteral( 
"interpolatepoint" );
 
   29 QString QgsInterpolatePointAlgorithm::displayName()
 const 
   31   return QObject::tr( 
"Interpolate point on line" );
 
   34 QStringList QgsInterpolatePointAlgorithm::tags()
 const 
   36   return QObject::tr( 
"linestring,reference,referencing,distance,interpolate" ).split( 
',' );
 
   39 QString QgsInterpolatePointAlgorithm::group()
 const 
   41   return QObject::tr( 
"Vector geometry" );
 
   44 QString QgsInterpolatePointAlgorithm::groupId()
 const 
   46   return QStringLiteral( 
"vectorgeometry" );
 
   49 QString QgsInterpolatePointAlgorithm::outputName()
 const 
   51   return QObject::tr( 
"Interpolated points" );
 
   54 QString QgsInterpolatePointAlgorithm::shortHelpString()
 const 
   56   return QObject::tr( 
"This algorithm creates a point geometry interpolated at a set distance along line or curve geometries.\n\n" 
   57                       "Z and M values are linearly interpolated from existing values.\n\n" 
   58                       "If a multipart geometry is encountered, only the first part is considered when " 
   59                       "interpolating the point.\n\n" 
   60                       "If the specified distance is greater than the curve's length, the resultant feature will have a null geometry." );
 
   63 QString QgsInterpolatePointAlgorithm::shortDescription()
 const 
   65   return QObject::tr( 
"Interpolates a point along lines at a set distance." );
 
   68 QList<int> QgsInterpolatePointAlgorithm::inputLayerTypes()
 const 
   88 QgsInterpolatePointAlgorithm *QgsInterpolatePointAlgorithm::createInstance()
 const 
   90   return new QgsInterpolatePointAlgorithm();
 
   93 void QgsInterpolatePointAlgorithm::initParameters( 
const QVariantMap & )
 
   95   std::unique_ptr< QgsProcessingParameterDistance> distance = std::make_unique< QgsProcessingParameterDistance >( QStringLiteral( 
"DISTANCE" ),
 
   96       QObject::tr( 
"Distance" ), 0.0, QStringLiteral( 
"INPUT" ), 
false, 0 );
 
   97   distance->setIsDynamic( 
true );
 
   99   distance->setDynamicLayerParameterName( QStringLiteral( 
"INPUT" ) );
 
  100   addParameter( distance.release() );
 
  111   mDistance = parameterAsDouble( parameters, QStringLiteral( 
"DISTANCE" ), context );
 
  113   if ( mDynamicDistance )
 
  114     mDistanceProperty = parameters.value( QStringLiteral( 
"DISTANCE" ) ).value< 
QgsProperty >();
 
  125     double distance = mDistance;
 
  126     if ( mDynamicDistance )
 
  127       distance = mDistanceProperty.valueAsDouble( context.
expressionContext(), distance );
 
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
bool hasGeometry() const
Returns true if the feature has an associated geometry.
void setGeometry(const QgsGeometry &geometry)
Set the feature's geometry.
A geometry is the spatial representation of a feature.
QgsGeometry interpolate(double distance) const
Returns an interpolated point on the geometry at the specified distance.
Contains information about the context in which a processing algorithm is executed.
QgsExpressionContext & expressionContext()
Returns the expression context.
Flag
Flags controlling how QgsProcessingFeatureSource fetches features.
@ FlagSkipGeometryValidityChecks
Invalid geometry checks should always be skipped. This flag can be useful for algorithms which always...
Base class for providing feedback from a processing algorithm.
static bool isDynamic(const QVariantMap ¶meters, const QString &name)
Returns true if the parameter with matching name is a dynamic parameter, and must be evaluated once f...
SourceType
Data source types enum.
@ TypeVectorLine
Vector line layers.
@ TypeVectorPolygon
Vector polygon layers.
@ TypeVectorPoint
Vector point layers.
Definition for a property.
@ DoublePositive
Positive double value (including 0)
A store for object properties.
static bool hasM(Type type) SIP_HOLDGIL
Tests whether a WKB type contains m values.
Type
The WKB type describes the number of dimensions a geometry has.
static Type addZ(Type type) SIP_HOLDGIL
Adds the z dimension to a WKB type and returns the new type.
static bool hasZ(Type type) SIP_HOLDGIL
Tests whether a WKB type contains the z-dimension.
static Type addM(Type type) SIP_HOLDGIL
Adds the m dimension to a WKB type and returns the new type.
QList< QgsFeature > QgsFeatureList