22 QString QgsConvertToCurvesAlgorithm::name()
 const 
   24   return QStringLiteral( 
"converttocurves" );
 
   27 QString QgsConvertToCurvesAlgorithm::displayName()
 const 
   29   return QObject::tr( 
"Convert to curved geometries" );
 
   32 QStringList QgsConvertToCurvesAlgorithm::tags()
 const 
   34   return QObject::tr( 
"straight,segmentize,curves,curved,circular" ).split( 
',' );
 
   37 QString QgsConvertToCurvesAlgorithm::group()
 const 
   39   return QObject::tr( 
"Vector geometry" );
 
   42 QString QgsConvertToCurvesAlgorithm::groupId()
 const 
   44   return QStringLiteral( 
"vectorgeometry" );
 
   47 QString QgsConvertToCurvesAlgorithm::outputName()
 const 
   49   return QObject::tr( 
"Curves" );
 
   52 QString QgsConvertToCurvesAlgorithm::shortHelpString()
 const 
   54   return QObject::tr( 
"This algorithm converts a geometry into its curved geometry equivalent.\n\n" 
   55                       "Already curved geometries will be retained without change." );
 
   58 QgsConvertToCurvesAlgorithm *QgsConvertToCurvesAlgorithm::createInstance()
 const 
   60   return new QgsConvertToCurvesAlgorithm();
 
   63 QList<int> QgsConvertToCurvesAlgorithm::inputLayerTypes()
 const 
   68 void QgsConvertToCurvesAlgorithm::initParameters( 
const QVariantMap & )
 
   70   std::unique_ptr< QgsProcessingParameterNumber > tolerance = qgis::make_unique< QgsProcessingParameterNumber >( QStringLiteral( 
"DISTANCE" ),
 
   72       0.000001, 
false, 0, 10000000.0 );
 
   73   tolerance->setIsDynamic( 
true );
 
   75   tolerance->setDynamicLayerParameterName( QStringLiteral( 
"INPUT" ) );
 
   76   addParameter( tolerance.release() );
 
   78   std::unique_ptr< QgsProcessingParameterNumber > angleTolerance = qgis::make_unique< QgsProcessingParameterNumber >( QStringLiteral( 
"ANGLE" ),
 
   80       0.000001, 
false, 0, 45.0 );
 
   81   angleTolerance->setIsDynamic( 
true );
 
   83   angleTolerance->setDynamicLayerParameterName( QStringLiteral( 
"INPUT" ) );
 
   84   addParameter( angleTolerance.release() );
 
   89   mTolerance = parameterAsDouble( parameters, QStringLiteral( 
"DISTANCE" ), context );
 
   91   if ( mDynamicTolerance )
 
   92     mToleranceProperty = parameters.value( QStringLiteral( 
"DISTANCE" ) ).value< 
QgsProperty >();
 
   94   mAngleTolerance = parameterAsDouble( parameters, QStringLiteral( 
"ANGLE" ), context );
 
   96   if ( mDynamicAngleTolerance )
 
   97     mAngleToleranceProperty = parameters.value( QStringLiteral( 
"ANGLE" ) ).value< 
QgsProperty >();
 
  108     double tolerance = mTolerance;
 
  109     if ( mDynamicTolerance )
 
  110       tolerance = mToleranceProperty.valueAsDouble( context.
expressionContext(), tolerance );
 
  111     double angleTolerance = mAngleTolerance;
 
  112     if ( mDynamicAngleTolerance )