Liste de  cours vba

Support d'Introduction à la programmation en VBA sur ArcGIS


Télécharger


Support d’Introduction à la programmation en VBA sur ArcGIS

1. Introduction

ArcGIS permet au développeur d’ajouter de nouvelles fonctionnalités à ses interfaces (ArcMap, ArcCatalog, ArcToolbox). Les différents types de développement ont été exposés dans le document ENSG-DCAIG-Introduction à ArcGIS pour le développeur.

Ce manuel décrit plus spécifiquement l'utilisation des bibliothèques d’objets ArcObjetcs enVBA. Ce mode de développement s’inscrit donc dans un contexte ArcGIS bureautique.

On rappel



le que VBA (Visual Basic for Application) est à la fois un langage et un environnement de développement. C'est un langage interprété dont l'intérêt est d'être partagé également par d'autres applications (notamment bureautiques : Word, Access, Excel ...).

Ce cours s'adresse aux débutants en programmation sur ArcGIS ayant un pré-requis en programmation (VBA ou autre langage). Après un chapitre (chap. 2) consacré à la personnalisation de l'interface ArcMap sans programmation, le chapitre 3 propose un bref rappel de la programmation en VBA. Le chapitre 4, essentiel pour la compréhension de ce cours, décrit les principes de la programmation sur ArcGIS (description du vocabulaire, comment utiliser les diagrammes, qu'est-ce que la norme COM etc ...). Les 13 chapitres suivants décrivent plus en détail les différentes possibilités de développement suivant les thèmes souhaités (analyse, mise en page, symbolisation, gestion des données etc ...) et sont illustrés d'exemples de code (sur fond grisé, police courrier)

Support d’Introduction à la programmation en VBA sur ArcGIS

Table des matières :

1. INTRODUCTION                                                                 .7

2. PERSONNALISATION DE L'INTERFACE : INTRODUCTION                         9

2.1. LA BOITE PERSONNALISER                                                        9

2.2. SAUVEGARDE DES PERSONNALISATIONS                                              9

2.3. EXEMPLE DE CREATION D'UNE COMMANDE                                          10

3. INTRODUCTION À VISUAL BASIC FOR APPLICATION                            13

3.1. EDITEUR VISUAL BASIC                                                        .13

3.2. SYNTAXE VBA: RAPPELS                                                       14

3.2.1. Types de variables                                                         .14

3.2.2. Déclaration et portée                                                      .14

3.2.3. Les différents types de procédures                                            .15

3.2.4. Instructions conditionnelles                                                 .16

3.2.5. Boucles                                                                  17

3.2.6. Passage d'arguments : ByRef et ByVal                                         18

3.2.7. Quelques remarques supplémentaires                                         .18

4. INTRODUCTION A ARCOBJECTS                                                19

4.1. COM ET INTERFACES                                                          .19

4.1.1. Pourquoi des interfaces ?                                                    19

4.1.2. Implémentation                                                            19

4.1.3. Query Interfaces (QI)                                                       21

4.2. OBJECT MODEL DIAGRAMS                                                      21

4.2.1. Classes                                                                 .22

4.2.2. Relations                                                                24

4.2.3. Propriétés                                                                26

4.2.4. Interfaces                                                                .27

4.3. OU TROUVER DE L'AIDE ?                                                        .28

4.3.1. Aide en ligne                                                             28

4.3.2. Explorateur d'objets (Editeur VBA)                                           .29

4.3.3. Esri Object Browser                                                        30

4.4. GLOBAL VARIABLES SCOPE                                                      30

4.5. EXEMPLES : MANIPULATION D'OBJETS ARCMAP                                       31

4.5.1. ActiveView                                                               .31

4.5.2. Layers                                                                   32

5. LECTURE DE CHAMPS, REQUETE SEMANTIQUE, TRAVAIL SUR LA SELECTION   35

5.1. FEATURECLASS ET FEATURE                                                     35

5.1.1. Présentation générale                                                      35

5.1.2. IFeatureClass                                                             36

5.1.3. Lecture de valeurs de champs                                                37

5.2. ENUMERATION DES OBJETS SELECTIONNES SUR LA CARTE                              .37

5.3. CURSEUR SUR LES OBJETS SELECTIONNES (SUR UNE COUCHE)                            .38

5.4. REQUETES SEMANTIQUE AVEC LES QUERY FILTERS                                   .39

5.5. RECUPERATION D'EVENEMENT SUR LA SELECTION                                     .40

6. GEOMETRIE                                                                   41

6.1. GEOMETRIE DANS UNE GEODATABASE                                             .41

6.2. LA GEOMETRIE DANS ARCOBJECTS                                                41

6.2.1. Points et Multipoints                                                       42

6.2.2. Segments (Line, Circular Arc, BezierCurve)                                     .42

6.2.3. Paths et Polylines                                                          42

6.2.4. Rings et Polygons                                                          43

6.2.5. Envelopes                                                                44

6.3. EXEMPLE :LECTURE DE LA GEOMETRIE D'UN POLYGONE                               .45

7. AFFICHAGE ET RAFRAICHISSEMENT D'ECRAN                                 .47

7.1. UTILISATION DU SCREENDISPLAY POUR DESSINER DES ELEMENTS GRAPHIQUES             .47

7.2. RAFRAICHISSEMENTS D'ECRAN                                                    48

8. SYMBOLES                                                                    .51

8.1. COULEUR                                                                   .51

8.2. POINTS                                                                     .52

8.3. LIGNES                                                                     .53

8.4. SURFACE                                                                    55

8.5. TEXTE                                                                      55

9. SYMBOLISATION DE COUCHES                                                 59

9.1. LA CLASSE FEATURERENDERER                                                  .59

9.2. EXEMPLE : REPRESENTATION EN UTILISANT UNE CLASSIFICATION PAR INTERVALLES EGAUX    .59

9.2.1. Création de l'histogramme                                                   60

9.2.2. Création de la classification                                                 60

9.2.3. Création d'une rampe de couleurs                                            .61

9.2.4. Création du Renderer                                                      62

9.3. AFFICHAGE DE LABELS                                                         .62

10. MISE EN PAGE                                                                65

10.1. SCHEMA GENERAL                                                           .65

10.2. CAS PARTICULIER DES ELEMENTS LIES A LA CARTE                                  67

10.3. GRAPHICS CONTAINER                                                        .68

10.4. EXEMPLE :AJOUT D'UNE IMAGE A LA MISE EN PAGE                                 69

10.5. ZOOM SUR LA PAGE                                                          70

11. TRANSFORMATION DE COORDONNEES - PROJECTIONS                       71

11.1. IDISPLAYTRANSFORMATION                                                   71

11.2. CREATION D'UN OUTIL : EXEMPLE D'OUTIL "PAN"                                  .72

11.3. REFERENCES SPATIALES ET PROJECTION                                          73

11.3.1. Références spatiales                                                        73

11.3.2. Changement de projection                                                  .75

12. ANALYSE SPATIALE                                                         .77

12.1. SPATIALFILTER                                                             77

12.2. SPATIAL OPERATOR INTERFACES                                                78

12.2.1. ITopologicalOperator                                                      .78

12.2.2. IProximityOperator                                                        .79

12.2.3. IRelationalOperator                                                        80

12.3. TRANSFORMATIONS 2D                                                       80

13. MISE A JOUR DE DONNEES                                                    81

13.1. CREATION D'ENTITES OU AJOUT D'ENREGISTREMENTS DANS UNE TABLE                  81

13.2. UTILISATION D'UNE SESSION D'EDITION                                           82

13.2.1. Introduction et rappel des fonctionnalités d'édition                               82

13.2.2. Ouverture et fermeture d'une session d'édition                                   .83

13.2.3. Opérations de mise à jour et annulations                                       84

14. AJOUT DE COUCHE A PARTIR DE DONNEES EXISTANTES                      .85

14.1. RAPPEL :LES DIFFERENTS MODES DE STOCKAGE DANS ARCCATALOG                   85

14.2. SCHEMA GENERAL                                                           .86

14.3. EXEMPLE DETAILLE D'AJOUT DE DONNEES PROVENANT D'UN SHAPEFILE                 .86

14.4. EXEMPLE D'AJOUT DE DONNEES PROVENANT D'UNE COUVERTURE                      .88

15. CREATION D'UNE BASE DE DONNEES                                          89

15.1. CREATION D'UNE GEODATABASE                                               .89

15.1.1. Création d'une géodatabase vide                                             .89

15.1.2. Références spatiales et champ "Géométrie"                                     89

15.1.3. Création de champs                                                       .91

15.1.4. CreateFeatureClass                                                       .92

15.2. EXPORT ET CONVERSIONS                                                      93

16. PROGRAMMATION DE L'INTERFACE UTILISATEUR                            95

16.1. UTILISATION DES COMMANDES EXISTANTES                                       95

16.2. CREATION DE BARRES D'OUTILS, MENUS ET COMMANDES                             96

16.2.1. Création d'une barre d'outil                                                  96

16.2.2. Création de menus et commandes                                             .96

16.2.3. Création d'un menu contextuel                                                97

16.3. BARRE DE PROGRESSION, BARRE D'ETAT                                          .98

17. PERSONNALISATION ARCCATALOG                                          99

17.1. GXDIALOG                                                                .99

17.2. GXAPPLICATION ET GXSELECTION.                                            .100

17.3. GXVIEW                                                                 .101

18. INDEX                                                                       102

Support d’Introduction à la programmation en VBA sur ArcGIS

1278