Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 12 July 2018 15:57

T-O-S-T-A-K-Y
Juste Inscrit !
Date d'inscription: 25 Jan 2013
Messages: 5

Export d'un atlas en image

Bonjour,

J'essai d exporter un atlas en image.
Pour cela j'ai trouvé un script Python qui me permet d'exporter chaque page de l'atlas et de les enregistrer dans un dossier précis.

mxd = arcpy.mapping.MapDocument("CURRENT")
... for pageNum in range(1, mxd.dataDrivenPages.pageCount + 1):
...   mxd.dataDrivenPages.currentPageID = pageNum
...   arcpy.mapping.ExportToPNG(mxd, r"C:\Users\jct\Desktop\IMAGE\IMG" + str(pageNum) + ".png")
... del mxd

La modification que j'aimerai apporter à ce script serai que ces images (qui s'appelle pour l'instant IMG1.png, IMG2.png...), puissent se renommer automatiquement par rapport a un nom de champ du shp qui me sert a faire l'atlas.

Est ce que quelq'un aurai une idée?

Merci bonne soirée

Hors ligne

 

#2 Fri 27 July 2018 05:36

Kevin Jousseaume
Participant assidu
Lieu: Nanterre, région parisienne
Date d'inscription: 20 Mar 2006
Messages: 217

Re: Export d'un atlas en image

Bonjour,

Avez-vous essayé d'utiliser le champ pageNameField ?

pageNameField : Returns a field object that represents the field used in the index feature class when setting up Data Driven Pages.


Un exemple de code utilisant ce champ en lieu et place de pageNum pour nommer les fichiers, trouvé ici : https://community.esri.com/thread/122163

Code:

import arcpy  
  
mxd = arcpy.mapping.MapDocument(r"C:\Workspace\DELETEME\TestDDP\dds_test.mxd")  
pageNameField = "<FieldName>"  
for pageNum in range(1, mxd.dataDrivenPages.pageCount + 1):  
     mxd.dataDrivenPages.currentPageID = pageNum  
     pageName = mxd.dataDrivenPages.pageRow.getValue(pageNameField)  
     print "Exporting page {0} of {1}".format(str(mxd.dataDrivenPages.currentPageID), str(mxd.dataDrivenPages.pageCount))  
     arcpy.mapping.ExportToPDF(mxd, r"C:\Workspace\DELETEME\TestDDP" + str(pageName) + ".pdf")    
del mxd

Cordialement,
Kevin Jousseaume

Hors ligne

 

Pied de page des forums

Powered by FluxBB