Pages: 1
- Sujet précédent - QGIS: enumeration dynamique comme parametres d un algo processing - Sujet suivant
#1 Tue 27 August 2024 10:54
- ThomasS
- Juste Inscrit !
- Date d'inscription: 30 Sep 2022
- Messages: 6
QGIS: enumeration dynamique comme parametres d un algo processing
Bonjour,
Dans le cadre de la création d'un plugin qui s'ajoute dans la boite à outils de traitement, je cherche à définir comme paramètre une énumération dont les valeurs dépendent d'une autre énumération d'un pramètre précédant.
Param1 : catégorie
Param2 : Année
les années proposées dépendent de la catégorie chosie.
J'ai demandé a deux reprises a un agrégateur statistique (ChatGPT) mais les réponses apportées ne fonctionnent pas.
Mon code exemple ressemble à ça suivant ces deux essais précédants :
class TestAlgorithm(QgsProcessingAlgorithm):
CATEGORY = 'CATEGORY'
ITEM = 'ITEM'
def initAlgorithm(self, config=None):
# Define the first enum parameter: Category
self.addParameter(
QgsProcessingParameterEnum(
self.CATEGORY,
self.tr('Category'),
options=['Fruit', 'Vegetables']
)
)
# Define the second enum parameter: Item, initially empty
self.addParameter(
QgsProcessingParameterEnum(
self.ITEM,
self.tr('Item'),
options=[],
optional=True
)
)
def updateParameters(self, parameters, context):
# Get the selected category
category_index = self.parameterAsEnum(parameters, self.CATEGORY, context)
category = ['Fruit', 'Vegetables'][category_index]
# Update the item parameter based on the selected category
if category == 'Fruit':
parameters[self.ITEM].setOptions(['Apple', 'Banana', 'Orange'])
elif category == 'Vegetables':
parameters[self.ITEM].setOptions(['Carrot', 'Potato', 'Tomato'])
else:
parameters[self.ITEM].setOptions([])
return super().updateParameters(parameters, context)
def processAlgorithm(self, parameters, context, feedback):
............... suite
Mais cette approche ne semble pas fonctionner. Est-ce que quelqu'un possède des pistes (ou tout du moins connait un plugin processing qui fait ça afin que je puisse examiner le code) ?.
merci d'avance.
Hors ligne
Pages: 1
- Sujet précédent - QGIS: enumeration dynamique comme parametres d un algo processing - Sujet suivant