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é ?

#1 Sun 16 March 2008 14:50

Thibast
Participant occasionnel
Date d'inscription: 9 May 2007
Messages: 15

Exports de fenêtre "image de localisation" pour fiches excel

Bonjour,

Je suis à la recherche d'une méthode (d'un outil !) pour créer automatiquement des images centrées sur des plages de numéros d'objets défini par un numéro de départ et de fin.
Ces images en jpg nommées à partir du nom de la table et de son numéro (sur 4 chiffres pour un classement automatique)  auraient  étés préalablement définies  par leur taille, échelle et  leur définition.

(Je sais,  je sais,  je suis terriblement exigeant  pour une personne qui n’est pas capable d’aligner deux lignes de commande sans se tromper mais bon c 'est comme ça qu'on essaie de progresser… ).

Une recherche sur ce forum (que je sollicite beaucoup pour ce type de travail) m’a permis de trouver des premières pistes de réponses (cf « réaliser plus de 600 cartes automatique ») avec  notamment la méthode de Olivier T qui utilise des fichiers Wor en cascade. Mais je suis encore très loin du résultat escompté :

Les trois fichiers Wor
##########################INITIALISATION.wor#########################################
!Workspace
!Version 750
!Charset WindowsLatin1

dim Num_depart as integer 'déclaration de variable
dim chemin as string ' chemin d'acces

chemin="c:\"

Open Table "c:\noeud.tab" Interactive
Map From noeud
Run Application chemin & "Num_depart.wor"

end mapinfo

############################################Num_Depart.WOR######################


!Workspace
!Version 750
!Charset WindowsLatin1

num_depart=1
Run Application " c:\mise en page.wor"

num_depart=num_depart+1
Run Application "c:\mise en page.wor"

‘…… les 2 dernières lignes, autant de fois que je veux de cartes en théorie en pratique bloque à 12 cartes

############################Mise_en_page.wor###############################
!Workspace
!Version 750
!Charset WindowsLatin1


Select * from noeud where IDU=num_depart into numero_choisi
set map redraw off
Add Map Layer numero_choisi


Set Map  Scale 1 Units "cm" For 500 Units "cm" 'echelle
Set Map Layer 1 Label Position Above Right Font ("Arial",257,8,16711680,16777215) With IDU Auto On 'etiquette de numero'
Set map zoom entire layer numero_choisi 'centre la fentre'
 
set map redraw on

save window frontwindow() as chemin & "Loc_noeud_" & num_depart & ".jpg" type "JPEG" resolution 200
###############################################################################


MONSIEUR Maurice avait donné également quelques bons conseils ( comme à son habitude).
Mais là je cale au message  d'erreur "aucun objet trouvé" trois fois de suite puis arrêt et malgré cela 12 images crées alors que 30 été demandées ...

En vous remerciant par avance de vos réponses.

Hors ligne

 

#2 Sun 16 March 2008 17:24

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Exports de fenêtre "image de localisation" pour fiches excel

Bonjour
Avez vous vérifié, en classant sur cette colonne, que le champ IDU de noeud est bien numéroté de 1 à 30 sans dicontinuité ?

Hors ligne

 

#3 Sun 16 March 2008 20:56

Thibast
Participant occasionnel
Date d'inscription: 9 May 2007
Messages: 15

Re: Exports de fenêtre "image de localisation" pour fiches excel

Bonsoir,

Encore bien vu ...
Maintenant pourquoi cela me lance une erreur "fichier non valide" lorsque je fais cela en automatique en cliquant directement sur "initialisation.wor" (plantage à la lecture du fichier num_depart.wor
Mais cela fonctionne sans erreur en manuel ?
Est-il possible de créer une boucle dans le fichier num_depart.wor correspondante au nombre d'image à créer ?

Hors ligne

 

#4 Sun 16 March 2008 21:13

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Exports de fenêtre "image de localisation" pour fiches excel

Thibast a écrit:

...Est-il possible de créer une boucle dans le fichier num_depart.wor correspondante au nombre d'image à créer ?


Eh non !! ...Impossible sans MapBasic
C'est bien pour ça que l'on crée cette suite de WOR, le nombre d'itération étant fixé par le nombre de fois où sont répétées les 2 dernières lignes de Num_Depart.WOR
Ceci dit on pourrait créer un seul WOR, un peu plus long à éditer à la main, pour avoir le même résultat

Hors ligne

 

#5 Sun 16 March 2008 21:40

Thibast
Participant occasionnel
Date d'inscription: 9 May 2007
Messages: 15

Re: Exports de fenêtre "image de localisation" pour fiches excel

Le fait de copier/coller une tel serie dans un  fichier  Wor pour obtenir 600 images ne m'enchante guère.
Comment faire sans mapBasic  ?

Hors ligne

 

#6 Sun 16 March 2008 22:00

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Exports de fenêtre "image de localisation" pour fiches excel

Piste: tenter d'utiliser Fetch first...Fetch next qui est quasiment la seule commande permettant un semblant de boucle au sein d'un WOR
On finira peut être par une erreur quand on dépassera la fin de fichier, mais ce sera après que tout le job soit fait ...

Hors ligne

 

#7 Sun 16 March 2008 22:26

Thibast
Participant occasionnel
Date d'inscription: 9 May 2007
Messages: 15

Re: Exports de fenêtre "image de localisation" pour fiches excel

Merci Maurice
Je regarde cela demain

Bonne Soirée

Hors ligne

 

#8 Mon 17 March 2008 00:15

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Exports de fenêtre "image de localisation" pour fiches excel

J'ai bien peur que vous n'y coupiez pas de recopier 600 fois un bout du WOR suivant (mais ça va assez vite de laisser le doigt sur la touche v de Ctrl+v smile)

!Workspace
!Version 750
!Charset WindowsLatin1

dim Num_depart as integer 'déclaration de variable
dim chemin as string ' chemin d'acces
dim cmd as string

Open Table "c:\noeud.tab" Interactive
Map From noeud

Fetch first from noeud
Num_depart=noeud.IDU
Select * from noeud where IDU=num_depart into numero_choisi
set map redraw off
Add Map Layer numero_choisi
Set Map  Scale 1 Units "cm" For 500 Units "cm"
Set Map Layer 1 Label Position Above Right Font ("Arial",257,8,16711680,16777215) With IDU Auto On
Set map zoom entire layer numero_choisi
set map redraw on
chemin=chr$(34)+"c:\Loc_noeud_"+num_depart+".jpg"+chr$(34)
cmd="save window frontwindow() as "+chemin+" type "+chr$(34)+"JPEG"+chr$(34)+" resolution 200"
run command cmd
Fetch next from noeud

Num_depart=noeud.IDU
Select * from noeud where IDU=num_depart into numero_choisi
set map redraw off
Add Map Layer numero_choisi
Set Map  Scale 1 Units "cm" For 500 Units "cm"
Set Map Layer 1 Label Position Above Right Font ("Arial",257,8,16711680,16777215) With IDU Auto On
Set map zoom entire layer numero_choisi
set map redraw on
chemin=chr$(34)+"c:\Loc_noeud_"+num_depart+".jpg"+chr$(34)
cmd="save window frontwindow() as "+chemin+" type "+chr$(34)+"JPEG"+chr$(34)+" resolution 200"
run command cmd
Fetch next from noeud
..........


En gras la partie à recopier 600 fois (ou plus, tant pis si ça dépasse...)

Hors ligne

 

#9 Mon 17 March 2008 14:36

Thibast
Participant occasionnel
Date d'inscription: 9 May 2007
Messages: 15

Re: Exports de fenêtre "image de localisation" pour fiches excel

Bonjour,

Que rajouter de plus qu'un GRAND MERCI !!!!

Hors ligne

 

Pied de page des forums

Powered by FluxBB