J'ai un outil basé sur un script Python dans ArcGIS. L'un des paramètres de l'outil est un fichier raster en entrée, que j'ai défini (en utilisant les propriétés de l'outil dans la boîte à outils) pour être une couche raster. Cela signifie que lorsque j'exécute l'outil, j'ai la possibilité de sélectionner ce paramètre dans une liste déroulante des couches raster actuellement chargées, ou en naviguant pour trouver une nouvelle couche raster dans le système de fichiers.
J'utilise ensuite le arcpy.GetParameterAsText(0)
code standard pour obtenir le paramètre dans mon script Python. Cela fonctionne bien lorsque je sélectionne un fichier en parcourant le système de fichiers, car le texte dans la boîte de dialogue est le chemin d'accès complet au fichier, mais lorsque je sélectionne simplement dans la liste déroulante, le texte que je récupère n'est que le nom de fichier (par exemple file.tif
) . .
Le code que j'utilise doit connaître le chemin d'accès complet au fichier - comment puis-je l'obtenir?
Si je pouvais supposer que le fichier était toujours dans l'espace de travail, je pourrais ajouter le nom de fichier à arcpy.env.workspace
, mais je ne peux pas le supposer. Dois-je parcourir toutes les couches chargées jusqu'à ce que j'en trouve une du même nom, puis trouve son chemin complet, ou existe-t-il un moyen plus simple?