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 November 2009 16:28

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

[APIC] Invisibilisation

Aloha,

L'ASL réalisé pour le tracé de mon atlas de points me permet d'en sélectionner plusieurs puis de sortir des pdf mis en forme.

Cependant, je souhaiterais pouvoir invisibiliser les autres points lors de chaque tracé et ne conserver que le point dont la fiche est tracée. Comment-faire ?

D'avance, merci,


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#2 Thu 12 November 2009 23:21

JC
Membre
Lieu: Les Clayes sous Bois
Date d'inscription: 31 Jul 2007
Messages: 332

Re: [APIC] Invisibilisation

Il va falloir te mettre aux opérateurs Tdi, Pierre... Et aux fonctions de tracé. Celles-ci peuvent être décrites dans une fonction appelée par NomFonction dans ta feuille de style (.CPS) ou ton document (.CPD).

En gros :
- éteindre tous tes points au début du tracé (VueComposantFixerAffichage) ;
- en cours de tracé, forcer le tracé du seul point qui t'intéresse (TdiTracerObjet ou TdiTracerObjetStyle) ;
- en fin de tracé, réafficher les points s'ils l'étaient initialement (de nouveau VueComposantFixerAffichage).

Comme ce n'est pas ce qu'on fait de plus intuitif, prévoir une petite formation, si ce n'est déjà fait...        JC


Association GeoRezo.net

Hors ligne

 

#3 Fri 13 November 2009 06:23

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: [APIC] Invisibilisation

Hello,

Autre solution, utiliser les domaines et rendre invisible" tous les points qui ne sont pas ton point courant.
Les autres point se traceront alors avec la procédure standard d'affichage nulle (opérateur EvPTracerNul.

Dans le cas joint (certe un peu long, l'objectif était de justement rendre invisibles les points ne correspondant pas à un critère donné par l'utilisateur.

Dernière modification par pyjoubert (Fri 13 November 2009 06:27)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#4 Fri 13 November 2009 08:08

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: [APIC] Invisibilisation

Voici un code qui rend invisibles tous les objets de même modèle sauf celui passé en argument

Dernière modification par pyjoubert (Fri 13 November 2009 08:09)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#5 Fri 13 November 2009 10:02

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: [APIC] Invisibilisation

Merci PY, j'essaie de suite.


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#6 Fri 13 November 2009 11:30

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: [APIC] Invisibilisation

Remplace toutefois VUE.VueMetier (à la fin) par le nom de ta vue.

Hors ligne

 

#7 Fri 13 November 2009 13:53

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: [APIC] Invisibilisation

J'ai un joli message d'erreur : "EvExtension : Argument 1 : N'est pas un nom d'émetteur".

J'ai pourtant changé le début du script :

Code:

Fonction [RendreInvisibleLesAutresObjetsQue (objet)]
[
    AFS_EvAjouterExtension "canevas" "extension_element" "AffichageCourant"
    Quand (Non Defini? [C_Invisible])

ou canevas est le nom de ma vue.

Une idée ? La doc me dit de passer un émetteur en 1er argument de AFS_EvAjouterExtension.


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#8 Fri 13 November 2009 19:08

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: [APIC] Invisibilisation

Essaie de mettre "VUE.canevas" à la place de "canevas" sinon regarde le nom de ta vue dans ton spaceNT.ini

Hors ligne

 

#9 Fri 13 November 2009 19:52

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: [APIC] Invisibilisation

Canevas ne serait-il pas le libelle de ta vue ?

Regarde dans ton fichier SpaceNT.ini dans le bloc [ViewTemplate].
Le notre est
[ViewTemplate]
VueEdit=EDIT
ASVUEPRL=BD
ASVUESEC=BD
VuePrinci=EDIT
VueMetier=BD

Regarde à quoi pourrait correspondre dans le tien VUE.ASVUEPRL ou bien VUE.ASVUESEC ou bien encore  VUE.Caneva  ???

Hors ligne

 

#10 Mon 16 November 2009 07:44

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: [APIC] Invisibilisation

Pierre,

Tu peux aussi remplacer "VUE.VueMetier" par VueNom VueDernierFocus. Je l'ai corrigé dans l'asl joint. La dernière ligne est un exemple d'exécution. Tu dois avoir sélectionné un objet auparavant

Dernière modification par pyjoubert (Mon 16 November 2009 07:46)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#11 Fri 11 December 2009 15:58

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: [APIC] Invisibilisation

Bonjour,

Voici le code qui fonctionne :

Code:

/*******************************************************************************
Utilitaire de tracé des fiches signalétiques des points de canevas

Composant TO_CAXYZ
Tracé en pdf
Ne pas oublier de vérifier les variables d'environnement du poste (gs\..\bin et gs\..\lib et l'installation de ghostscript

******************************************************************************/

/*initialisation des variables*/
Donner [CANV_CPD_Nb] 0

Quand (Non Defini? [CANV_CPD_TMP])         [Donner [CANV_CPD_TMP]         AllouerTable TypeCaractere 4000]
Quand (Non Defini? [CANV_CPD_NUM])         [Donner [CANV_CPD_NUM]         AllouerTable TypeCaractere 4]
Quand (Non Defini? [CANV_CPD_BUF])         [Donner [CANV_CPD_BUF]         AllouerTable TypeCaractere 4000]

Quand (Non Defini? [CANV_CPD_PDF])         [Donner [CANV_CPD_PDF]         AllouerTable TypeCaractere 400]
Quand (Non Defini? [CANV_CPD_PDF_FIC])         [Donner [CANV_CPD_PDF_FIC]         AllouerTable TypeCaractere 400]
Quand (Non Defini? [CANV_CPD_Imprimante])    [Donner [CANV_CPD_Imprimante]    TexteFormat("PDFCreator")]
Quand (Non Defini? [CANV_CPD_Rep_PDF])     [Donner [CANV_CPD_Rep_PDF]     AllouerTable TypeCaractere 400]
Quand (Non Defini? [CANV_CPD_Composant]) [Donner [CANV_CPD_Composant] TexteFormat("TO_CAXYZ")]
Quand (Non Defini? [CANV_CPD_PDF])         [Donner [CANV_CPD_PDF]         AllouerTable TypeCaractere 4000]

Quand (Non Defini? [CANV_pszJJ]) [Donner [CANV_pszJJ] AllouerTable TypeCaractere 2]
Quand (Non Defini? [CANV_pszDD]) [Donner [CANV_pszDD] AllouerTable TypeCaractere 2]
Quand (Non Defini? [CANV_pszAAAA]) [Donner [CANV_pszAAAA] AllouerTable TypeCaractere 4]
Quand (Non Defini? [CANV_pszDate]) [Donner [CANV_pszDate] AllouerTable TypeCaractere 10]
Quand (Non Defini? [CANV_CPD_Val_Date]) [Donner [CANV_CPD_Val_Date] AllouerTable TypeCaractere 10]

Quand (Non Defini? [CANV_NUM]) [Donner [CANV_NUM] AllouerTable TypeCaractere 10]
Quand (Non Defini? [CANV_CPD_ListPoint]) [Donner [CANV_CPD_ListPoint] AllouerTable TypePoint 8000 ]
Quand (Non Defini? [CANV_X]) [Donner [CANV_X] AllouerTable TypeCaractere 10]
Quand (Non Defini? [CANV_Y]) [Donner [CANV_Y] AllouerTable TypeCaractere 10]
Quand (Non Defini? [CANV_Z]) [Donner [CANV_Z] AllouerTable TypeCaractere 10]
Quand (Non Defini? [CANV_DETER]) [Donner [CANV_DETER] AllouerTable TypeCaractere 200]
Quand (Non Defini? [CANV_NATURE]) [Donner [CANV_NATURE] AllouerTable TypeCaractere 200]
Quand (Non Defini? [CANV_COMMUNE]) [Donner [CANV_COMMUNE] AllouerTable TypeCaractere 100]
Quand (Non Defini? [CANV_ADRESSE]) [Donner [CANV_ADRESSE] AllouerTable TypeCaractere 4000]
Quand (Non Defini? [CANV_DATE_MAJ]) [Donner [CANV_DATE_MAJ] AllouerTable TypeCaractere 4000]


Quand (Non Defini? [CANV_CPD_FIC_IMG])         [Donner [CANV_CPD_FIC_IMG]         AllouerTable TypeCaractere 4000]
Quand (Non Defini? [CANV_CPD_REP_IMG])         [Donner [CANV_CPD_REP_IMG]         AllouerTable TypeCaractere 4000]
Quand (Non Defini? [CANV_IMG_DX]) [Donner [CANV_IMG_DX] AllouerTable TypeCaractere 10]
Quand (Non Defini? [CANV_IMG_DY]) [Donner [CANV_IMG_DY] AllouerTable TypeCaractere 10]

/**/
Fonction [collectionner () ]
[    
/*Création de la collection des emprises à tracer d'après la sélection*/

    CollectionDetruire "Pt_canevas_a_tracer"
    CollectionCreer "Pt_canevas_a_tracer"
    CollectionAjouterObjet "Pt_canevas_a_tracer" SelectionFlot 6 "TO_CAXYZ"

]



/*fonction principale de tracé*/
Fonction [ TraceFicheCanevas ]
[
    // Le nom du repertoire réécrit ci-dessous doit être celui entré
    TxtCopier CANV_CPD_Rep_PDF "subst M: "
    TxtAjouter CANV_CPD_Rep_PDF SessionUtiRepertoire
    TxtCopier CANV_CPD_Rep_PDF TxtTronquer CANV_CPD_Rep_PDF "\" 2

    AFS_FlotEpuiser AppelSystemeFlot CANV_CPD_Rep_PDF
    RepertoireCourantFixer "M:\"
    //Ecrire RepertoireCourant

    TxtCopier CANV_CPD_Rep_PDF "M:\"
    /*Ecrire "CANV_CPD_Rep_PDF" CANV_CPD_Rep_PDF*/

    collectionner 
    
    PourChaque [ptcanv] CollectionFlotObjet "Pt_canevas_a_tracer"
        [
        
        /*création du titre du document*/
         Donner [OBJET_EN_COURS_D_IMPRESSION] ptcanv
            /*VerifCANV (ptcanv)*/
            REIMS_CANV_COORD (ptcanv)
            
            TexteEcrireFormat(CANV_CPD_PDF, "POINT DE CANEVAS n%s.PS",
                CANV_NUM)
                Ecrire TexteFormat("tracé de %s",CANV_CPD_PDF)

            
/*            Ecrire CANV_NUM
            Ecrire CANV_X
            Ecrire CANV_Y
            Ecrire CANV_Z
            Ecrire CANV_NUM 
            Ecrire CANV_DETER
            Ecrire CANV_COMMUNE
            Ecrire CANV_NATURE*/ 
            
            Donner [CANV_CPD_Nb] ObjetSection (ptcanv,1,CANV_CPD_ListPoint)
            Donner [X1] (XPoint(CANV_CPD_ListPoint -> 0) - 1000)
            Donner [Y1] (YPoint(CANV_CPD_ListPoint -> 0) - 1000)
            /*Ecrire X1
            Ecrire Y1*/
            Donner [X2] (X1 + 2000)
            Donner [Y2] (Y1 + 2000)
            
            /*Images canevas*/
            CANV_IMAGE CANV_NUM
            
            
            /*Recherche du fichier gabarit de tracé*/        
            Donner [SrcFile] FichierOuvrir "\\Srvwebsig\apic47data\gdu\compose_fr\document\DIVERS\fiche_signaletique.cps" "r"
            /*Ecrire "source ok"*/
            
            /*Création du fichier de tracé*/
            Donner [TmpFile] FichierOuvrir "\\Srvwebsig\apic47data\gdu\compose_fr\document\DIVERS\fiche_signaletique_final.cpd" "w+"
            /*Ecrire "destination ok"*/
        
            /*test de son existence et sinon renvoie un msg d'erreur*/
            Donner [CurPos] SrcFile
            Quand (CurPos < 0)[
                        AS_DialAlerter AdresseNulle "Ouverture du modèle CPD impossible!"
            ]
            Donner [DstFile] TmpFile 
            Quand (DstFile < 0)[
                  AS_DialAlerter AdresseNulle "Création du CPD à imprimer impossible!"
                  FichierFermer SrcFile


                  ]
            /*Ecriture du fichier cpd*/
            TantQue (CurPos != -2)[
                // lit ligne par ligne
                       Donner [CurPos] FichierLireFormat (SrcFile,"%[^\n]\n",CANV_CPD_TMP)
                       /*Ecrire "début d'écriture"*/
                    Quand (CurPos != -2)[
                                        /*Ecrire CurPos*/
                        TexteEcrireFormat(CANV_CPD_BUF,"%s",CANV_CPD_TMP)
                        FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                        Quand TxtPosition CANV_CPD_TMP "!date_maj" >= 0
                                [
                                TxtCopier CANV_CPD_Val_Date CANV_CPD_LireDate
                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {Date de mise à jour : %s} 12234 145 0 SSM_TEXTE_Arial_0_0_0_0_0_350_255_0_0_0_0_0_0_0_0_0_0_0_0 0",CANV_CPD_Val_Date)
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!date_trace" >= 0
                                [
                                TxtCopier CANV_CPD_Val_Date (DateDecoder (ObjetAttributSimple ptcanv "date_m_a" ) "dd/MM/YYYY")
                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {Date d'établissement : %s} 12234 557 0 SSM_TEXTE_Arial_0_0_0_0_0_350_255_0_0_0_0_0_0_0_0_0_0_0_0 0",CANV_CPD_Val_Date)
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!projection" >= 0
                                [
                                /*Ecrire "Youpi"*/
                                FichierEcrireFormat(DstFile,"VerrouillageVue Faux\n")
                                FichierEcrireFormat(DstFile,"TypeProjection 4 Faux\n")
                                TexteEcrireFormat(CANV_CPD_BUF,"ProjectionParObjetEchelle %f %f %f %f 10000 0.000000 Faux",X1,Y1,X2,Y2)
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                
                                /*TypeProjection 4 Faux
                                ProjectionParObjetEchelle 721476843.000000 173686634.000000 721478843.000000 173688634.000000 2000 0.000000 Faux*/
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BADM 11 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BCLTR 8 1 \n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BCOM 10 1 \n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BENS 7 1 \n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BSAN 6 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BSOC 5 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_BSPO 4 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_CCULT 9 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_COM 16 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_EAU 14 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_ILOT 1 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_PARTI 3 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele PA_QUAD 2 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele R_LIBVOI 12 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele R_LIBVOP 15 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele TO_CAXYZ 17 1\n")
                                FichierEcrireFormat(DstFile,"AffichageModele TO_CAZ 17 1\n")
                                
                                //Ecrire CANV_CPD_BUF
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!Cadre" >= 0
                                [

                                ]
                        Quand TxtPosition CANV_CPD_TMP "TypeProjection 1 Faux" >= 0
                                [
                                FichierEcrireFormat(DstFile,"!\n")
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!Espace" >= 0
                               [
                                TexteEcrireFormat(CANV_CPD_BUF,"Espace 500 500 40060 28676 Spcp_TRAITCONTINUFINNOIR Faux")
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                                /*coord*/
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {X}" >= 0
                               [
                               Quand TxtLongueur CANV_X > 0 
                                                [
                                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {X : %s} %s",CANV_X,SousTable(CANV_CPD_TMP,14,(TxtLongueur(CANV_CPD_TMP) - 13)))
                                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                                
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {Y}" >= 0
                               [
                               Quand TxtLongueur CANV_Y > 0 
                                                [
                                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {Y : %s} %s",CANV_Y,SousTable(CANV_CPD_TMP,14,(TxtLongueur(CANV_CPD_TMP) - 13)))
                                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                                
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {Z}" >= 0
                               [
                               Quand TxtLongueur CANV_Z > 0 
                                                [
                                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {Z : %s} %s",CANV_Z,SousTable(CANV_CPD_TMP,14,(TxtLongueur(CANV_CPD_TMP) - 13)))
                                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {NATURE}" >= 0
                               [
                               Quand TxtLongueur CANV_NATURE > 0 
                                                [
                                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {%s} %s",CANV_NATURE,SousTable(CANV_CPD_TMP,19,(TxtLongueur(CANV_CPD_TMP) - 18)))
                                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                                
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {DETER}" >= 0
                               [
                               Quand TxtLongueur CANV_DETER > 0 
                                                [
                                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {%s} %s",CANV_DETER,SousTable(CANV_CPD_TMP,18,(TxtLongueur(CANV_CPD_TMP) - 17)))
                                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {NUM}" >= 0
                               [
                               Quand TxtLongueur CANV_NUM > 0 
                                                [
                                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {%s} %s",CANV_NUM,SousTable(CANV_CPD_TMP,17,(TxtLongueur(CANV_CPD_TMP) - 16)))
                                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                        Quand TxtPosition CANV_CPD_TMP "!TexteFixe {COMMUNE}" >= 0 
                                [
                                Quand TxtLongueur CANV_COMMUNE > 0
                                [
                                TexteEcrireFormat(CANV_CPD_BUF,"TexteFixe {%s} %s",CANV_COMMUNE,SousTable(CANV_CPD_TMP,20,(TxtLongueur(CANV_CPD_TMP) - 19)))
                                ]
                                FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                ]
                                
                        Quand TxtPosition CANV_CPD_TMP "!Image" >= 0 
                              [
                                /*Ecrire (FichierExiste? CANV_CPD_FIC_IMG)*/
                                Quand (FichierExiste? CANV_CPD_FIC_IMG) 
                                    [
                                    /*Ecrire L_IMG
                                    Ecrire H_IMG*/ 
                                    TexteEcrireFormat(CANV_CPD_BUF,"Image %s 122 30 %u %u", CANV_CPD_FIC_IMG, L_IMG, H_IMG)
                                    FichierEcrireFormat(DstFile,"%s\n",CANV_CPD_BUF)
                                    ]
                              ]


                    ]
        ]

        /*initialisation des variables d'impression*/
        ImprimanteFixerOption 1 CANV_CPD_Imprimante
        ImprimanteFixerOption 2 32767
        ImprimanteFixerOption 4 2
        ImprimanteFixerOption 9 CANV_CPD_PDF
        FichierFermer TmpFile
        FichierFermer DstFile
        /* Contournement temporaire de l'anomalie Compose*/
        //Copier ((COMP_GSFIC_strDoc : "_&strLibre" : 0)  : "_iNbElement") 0

        TxtCopier CANV_CPD_TMP TxtTronquer CANV_CPD_PDF ".PS" 2

        Donner [FicBat] FichierOuvrir "APIC2PDF.BAT" "a"
        Si (FicBat >= 0)
        [
            FichierEcrireFormat(FicBat, "CMD /C PS2PDF %c%s.PS%c %c%s.PDF%c\n",Caractere 34,CANV_CPD_TMP,Caractere 34,Caractere 34,CANV_CPD_TMP,Caractere 34 )
            FichierEcrireFormat(FicBat, "DEL %c%s.PS%c /Q\n", Caractere 34,CANV_CPD_TMP,Caractere 34)
            FichierFermer FicBat
        ]
        [
            AS_DialAlerter AdresseNulle "Erreur ouverture APIC2PDF.BAT"
        ]
        
        Spcp_Pgm_Charger "\\srvwebsig\Apic47Data\gdu\compose_fr\document\DIVERS\fiche_signaletique_final.cpd" Faux

        /*Tracé*/
        Spcp_Pgm_Imprimer
        Spcp_Pgm_Fermer
        
        SelectionVider
        SelectionAjouterObjet ptcanv

        FichierFermer DstFile
    FichierFermer SrcFile

        ]
    AFS_FlotEpuiser AppelSystemeFlot "APIC2PDF.BAT"
    AFS_FlotEpuiser AppelSystemeFlot "DEL APIC2PDF.BAT /Q"
    AFS_FlotEpuiser AppelSystemeFlot "DEL *.PS /Q"
    AFS_FlotEpuiser AppelSystemeFlot "subst M: /D"

    Donner [user32] AppelFonction (1,"I","user32.dll")
    Donner [msgbox] AppelFonction (2,"I", user32,"MessageBoxA")
    AppelFonction (msgbox,"I", 0,"Fichiers PDF Générés dans le répertoire utilisateur","Fichiers générés",0)
    AFS_FlotEpuiser AppelSystemeFlot "subst M: /D"
]


/*détermination du fichier image, des facteurs d'aggrandissement...*/
Fonction [ CANV_IMAGE (num)]
[
    Donner [CANV_CPD_REP_IMG] "\\Srvclactnas\services\PoleRessources\DirLog\SRIG\DONNEES\REFERENTIELS\canevas\croquis\"
    TexteEcrireFormat (CANV_CPD_FIC_IMG, "%s%s.jpg", CANV_CPD_REP_IMG, num)
    Quand (FichierExiste? CANV_CPD_FIC_IMG) [
    Donner [CANV_IMG_DX] Entier (18623 / (ImageLargeur CANV_CPD_FIC_IMG))
    Donner [CANV_IMG_DY] Entier (11139 / (ImageHauteur CANV_CPD_FIC_IMG))
    Si CANV_IMG_DX > CANV_IMG_DY 
        [
            Donner [L_IMG] ((ImageLargeur CANV_CPD_FIC_IMG) * CANV_IMG_DY)
            Donner [H_IMG] ((ImageHauteur CANV_CPD_FIC_IMG) * CANV_IMG_DY)
        
        ]
        [
            Donner [L_IMG] ((ImageLargeur CANV_CPD_FIC_IMG) * CANV_IMG_DX)
            Donner [H_IMG] ((ImageHauteur CANV_CPD_FIC_IMG) * CANV_IMG_DX)
        ]
    ]

]
/*fonction de récupération des coordonnées et autres attributs*/
Fonction [ REIMS_CANV_COORD (obj)]
[
    
    TxtCopier CANV_X TexteFormat("%.3f", (XPoint ObjetSymbolePoint (obj) / 1000.00))
    TxtCopier CANV_Y TexteFormat("%.3f", (YPoint ObjetSymbolePoint (obj) / 1000.00)) 
    TxtCopier CANV_Z TexteFormat("%.3f", (ZPoint ObjetSymbolePoint (obj) / 1000.00)) 
    TxtCopier CANV_NUM AFS2_ValeurVersTexte (ObjetAttributSimple (obj) "numero" )
    TxtCopier CANV_DETER AFS2_ValeurVersTexte (ObjetAttributSimple (obj) "determin" )
    TxtCopier CANV_COMMUNE AFS2_ValeurVersTexte (ObjetAttributSimple (obj) "commune" )
    TxtCopier CANV_NATURE AFS2_ValeurVersTexte (ObjetAttributSimple (obj) "material" )
    TxtCopier CANV_DATE_MAJ AFS2_ValeurVersTexte (ObjetAttributSimple (obj) "date_m_a" )

]

/*vérification de la nature de l'objet sélectionné*/
Fonction [ VerifCANV (CurObj) ]
[
    Quand Non Objet? CurObj [
        AS_DialAlerter AdresseNulle "Pas d'objet géographique sélectionné !"
        Resultat 0
    ]

    Quand TxtComparer(ObjetComposant(CurObj),CANV_CPD_Composant) != 0 [
        AS_DialAlerter AdresseNulle "Le composant de l'objet géographique sélectionné n'est pas correct!"
        Resultat 0
    ]

    Resultat 1
]

/*nom de l'utilisateur*/
Fonction [CAR_LireUtilisateur ()]
[
        Resultat SessionUtiNom
]

/*fonction de lecture de la date*/
Fonction [CANV_CPD_LireDate () var rDate,X,Y]
[
    Donner [rDate] DateSysteme
    Si (TexteLireFormat (rDate,"%2c%*c%2c%*c%4c%*s", COMPOSE_pszJJ, COMPOSE_pszDD, COMPOSE_pszAAAA)== 0)
        [
        Quand (Entier (COMPOSE_pszJJ -> 0) == 32)
            [
            Copier (COMPOSE_pszJJ : 0) '0'
            ]
        Quand (Entier (COMPOSE_pszDD -> 0) == 32)
            [
            Copier (COMPOSE_pszDD : 0) '0'
            ]
        TxtCopierN  COMPOSE_pszDate COMPOSE_pszJJ 2
        TxtAjouterN COMPOSE_pszDate "/" 1
        TxtAjouterN COMPOSE_pszDate COMPOSE_pszDD 2
        TxtAjouterN COMPOSE_pszDate "/" 1
        TxtAjouterN COMPOSE_pszDate COMPOSE_pszAAAA 4
        Resultat COMPOSE_pszDate
        ]
        [
        Resultat " "
        ]
]
Fonction [REIMS_CPD_GestAffiche (adr) var ev, obj][

    Donner [ev] EvType adr
    Donner [obj] (ev -> "objet")

    Si Collection? Pt_canevas_a_tracer [
        PourChaque [Item] CollectionFlotObjet Pt_canevas_a_tracer[
            Quand obj == Item [
                Copier (ev : "stop") 0
                Resultat 0
            ]

        ]

        Copier (ev : "stop") 1
    ][
        Copier (ev : "stop") 0
    ]
]
Fonction [FiltreImpressionCompo(adr) var str]
[
  Donner [str] ForcerTypeAdresse Type_EvAffichage adr
  Donner [objet] (str -> "objet")
  Copier (str : "stop") 0  //permet l'affichage et/ou l'impression par défaut
  // ici on detecte si on afficha à l'écran ou ailleurs -> imprimante donc ! ! !
  Quand (Non ((str -> "dispositif") == TdiDispositifVue VueDernierFocus))  
  [
    //On regarde si on est sur le bon objet
    Quand (Non (objet == OBJET_EN_COURS_D_IMPRESSION))

    [
      Copier (str : "stop") 1
    ]
  ]
]

EvAssocier "Space.Affichage.Element.BD.TO_CAXYZ" Valeur [FiltreImpressionCompo]

art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

Pied de page des forums

Powered by FluxBB