Je reviens avec une nouvelle question sur la condition IF.
Et oui je cherche à aller toujours plus loin et j'ai du mal^^
Grâce au conseil de Barbapapa dans ce topic je me suis mis à faire un peu de python et mettre des scripts dans mes model builder.
Je cherche maintenant à reprojetter des couches en fonction de leur projection d'origine.
c'est à dire si la projection d'origine est NTF_Lambert_2étendu ou Lambert II je les reprojete sinon je passe à la suite.
Pour cela j'ai fait un script python qui me permet de savoir la projection d'origine j'y mets une condition if de si ca contient II ou tendu (et oui l'accent n'est pas accepter pour faire étendu mais ca marche comme ça) alors renvoie true sinon renvoie false.
mon script sexécute comme il faut.
J'utilise la donnée en sortie comme pré-condition pour lexécution de projeter.
Le problème de la pré-condition est que le processus "projeter" sexécute quand même et c'est à la fin de lexécution qu'il test la condition.
Cela crée des bug qui interrompt mon model car il m'arrive d'avoir des données en lambert 93 et projection lambert93 vers lambert93 = Erreur.
Je souhaiterais donc réaliser une manipulation pour dire si mon test est faux alors tu recommence l'itération ou alors tu ignores le projeter.
Auriez vous une idée de comment faire?
Pour donner une idée de ce que je fais ci joint le model builder et le script python
import arcpy
import sys
import os
TxtFilePath = arcpy.GetParameterAsText(0)
dsc = arcpy.Describe(TxtFilePath)
if "II" in dsc.spatialReference.Name or "tendu" in dsc.spatialReference.Name:
resu=1
projection=dsc.spatialReference.Name
print projection
else :
resu=0
#Definition du parametre en sortie
arcpy.SetParameterAsText(1, resu)
Et oui je cherche à aller toujours plus loin et j'ai du mal^^
Grâce au conseil de Barbapapa dans ce topic je me suis mis à faire un peu de python et mettre des scripts dans mes model builder.
Je cherche maintenant à reprojetter des couches en fonction de leur projection d'origine.
c'est à dire si la projection d'origine est NTF_Lambert_2étendu ou Lambert II je les reprojete sinon je passe à la suite.
Pour cela j'ai fait un script python qui me permet de savoir la projection d'origine j'y mets une condition if de si ca contient II ou tendu (et oui l'accent n'est pas accepter pour faire étendu mais ca marche comme ça) alors renvoie true sinon renvoie false.
mon script sexécute comme il faut.
J'utilise la donnée en sortie comme pré-condition pour lexécution de projeter.
Le problème de la pré-condition est que le processus "projeter" sexécute quand même et c'est à la fin de lexécution qu'il test la condition.
Cela crée des bug qui interrompt mon model car il m'arrive d'avoir des données en lambert 93 et projection lambert93 vers lambert93 = Erreur.
Je souhaiterais donc réaliser une manipulation pour dire si mon test est faux alors tu recommence l'itération ou alors tu ignores le projeter.
Auriez vous une idée de comment faire?
Pour donner une idée de ce que je fais ci joint le model builder et le script python
import arcpy
import sys
import os
TxtFilePath = arcpy.GetParameterAsText(0)
dsc = arcpy.Describe(TxtFilePath)
if "II" in dsc.spatialReference.Name or "tendu" in dsc.spatialReference.Name:
resu=1
projection=dsc.spatialReference.Name
print projection
else :
resu=0
#Definition du parametre en sortie
arcpy.SetParameterAsText(1, resu)