Dynamic Map®  Workshop

 

 

 

q       Création manuelle de scripts Dynamic Map


   Voir des exemples   



 

q       COMMUNIQUER de Javascript vers Dynamic Map

 

 

 

 

Retour au MENU

Création manuelle de SCRIPTS Dynamic Map®
_________________________

 

 

Pour chaque analyse, outre les fichiers de données et de scripts, il faut disposer des fichiers "DynamicMap_jar.zip que vous renommez aussitôt mis sur votre disque dur en "DynamicMap.jar"" ainsi que "constantes.h" et "logo.gif" (ces derniers pouvant être incorporés dans le fichier principal) le tout dans un même répertoire.

 

 

1 - COMPILATEURS DE FICHIERS limités à certains formats dans cette version provisoire  

 

Le buts essentiel des outils de compilation est d’obtenir des fichiers très compacts afin d’accélérer les temps de transfert vers les postes clients.

En fonction des fichiers géographiques utilisés (formats des fonds de cartes) et des fichiers de données attributaires, des compilateurs spécifiques doivent être utilisés.

Grâce au planificateur de tâches sur l’atelier cartographique ces outils deviennent des robots de mise à jour programmée. Ils peuvent venir compléter le travail d’autres outils (ex. macro auto-exécutable de requêtage SQL sur base de données).

 

q       Ex. de Compilation de fichiers DBF (vers le format interne .dmd)

 

Copier le fichier "dbf" dans le sous-répertoire CompDBF et à partir de celui-ci :

Commande : compdbf nom_fichier.dbf nom_fichier.dmd

 

Il faut disposer des 3 fichiers suivants :

CompDBF.class

BinaryOutputStream.class

BinaryInputStream.class

 

Il est pratique de créer un fichier batch de compilation par lot :

Contenu du ficher appelé par exemple ‘’autoDMD.bat’’

Ex.

@echo off

java CompDBF S:/MRO/site_internet/promo/promo.dbf S:/MRO/site_internet/promo/promo.dmd

java CompDBF e:/synoptique/dat_com.dbf S:/MRO/site_internet/locatif/data_com.dmd

java CompDBF S:/MRO/portail_dm/ag_p1.dbf S:/MRO/site_internet/locatif/ag_p1.dmd

java CompDBF  S:/MRO/site_internet/details/phot_grn.dbf S:/mro/data/phot_grn.dmd

 

 

q       Ex. de Compilation de fichiers BNA polygonaux (vers le format interne .dmf)

 

Copier le fichier "bna" dans le sous-répertoire MakeBND et à partir de celui-ci :

Commande : makebnd nom_fichier.bna nom_fichier.dmf num_identifiant_index

où num_identifiant_index vaut 1, 2 ou 3 selon que l’identifiant qui servira d’index est le 1er, 2ème ou 3ème , index est obligatoire

 

q       Ex. de Compilation de fichiers BNA ponctuels (vers le format interne .dmf)

 

Copier le fichier "bna" dans le sous-répertoire MakeBND\Points et à partir de celui-ci :

Commande : makebnd nom_fichier.bna nom_fichier.dmf num_identifiant_index [param]

où num_identifiant_index vaut 1, 2 ou 3 selon que l’identifiant qui servira d’index est le 1er, 2ème ou 3ème

et [param] est un paramètre optionnel qui ne doit être indiqué (avec une valeur quelconque, ici ‘’bidule’’)  que si chaque point est décrit sur une unique ligne.

 

Ex : makebnd toto.bna toto.dmf 1 bidule      si fichier une ligne

        makebnd toto.bna toto.dmf 1                si fichier 2 lignes

 

Attention : dans cette version, dans le cas où le fichier est sur une seule ligne, on suppose qu’il contient toujours 3 et exactement 3 identifiants. Cette limitation n’existe pas pour les fichiers sur 2 lignes.


Retour au MENU

 

Il faut disposer des fichiers suivants :

makebnd.bat (à adapter)

makeBND.class

makeBND.java

Polygone.class

Polygone.java

 

Contenu du ficher ‘’makebnd.bat’’

Ex.:

@echo off

set PATH=%PATH%;c:\program files\java soft\jre\1.3\bin

java MakeBND %1 %2 %3 %4 %5 %6

 

Il est pratique de créer un fichier batch de compilation par lot (on peut mêler objets zonaux et ponctuels) :

Contenu du ficher appelé par exemple ‘’ autoDMF.bat’’

Ex.

@echo off

rem ci-après 3 fichiers de polygones (contours)

call makeBND s:/mro/occ_social/rn_gr.bna s:/mro/site_internet/details/rn_gr.dmf 1

call makeBND s:/mro/site_internet/details/rn_GR.bna s:/mro/occ_social/rn_GR.dmf 1

call makeBND s:/mro/site_internet/details/rn_GR.bna s:/mro/site_internet/details/rn_GR.dmf

rem ci-après 2 fichiers de points

call makeBND d:/donnees/geo/bna/seveso.bna ../seveso.dmf 1 dudule

call makeBND s:/mro/flux/fr_ch_li.bna s:/mro/flux/fr_ch_li.dmf 1 dudul



2 - Syntaxe de la balise HTML

 

<APPLET code = "DynamicMap.class" archive = "DynamicMap.jar" width = 100% height = 100%>

<PARAM name=script value="nom_du_script.txt">

</APPLET>

 

RAPPEL :      Il faut évidemment disposer du programme applet dans chaque sous-répertoire de travail géographique

                                               DynamicMap.jar

Ainsi que le fichier

                                   constantes.h

cités au début de ce dossier.


Retour au MENU

 

3 - Syntaxe générale des fichiers scripts : création manuelle dans cette version

 

 

REMARQUE : Pour annuler une ligne ou indiquer un commentaire, faire débuter la ligne par une double barre :  // (cf. ci-après et dans le § EXEMPLES DE FICHIERS)

 

 

#include "constantes.h"   inclusion obligatoire du fichier qui définit les constantes.

De la même façon, des fichiers scripts peuvent être inclus de sorte qu’il n’y ait pas a redéfinir certains paramètres communs à plusieurs cartes.

(par exemple  #include "dm_ex1.txt")

 

// Commentaire1

 

Paramètre_global_1 : valeur1

Paramètre_global_2 : valeur2

…..

Paramètre_global_N : valeurN

Layer {

  nomLayer : nom_du_layer1

  Paramètre_local_1 : valeur1

  Paramètre_local_2 : valeur2

 

  Paramètre_local_N : valeurN

}

 

Layer {

  nomLayer : nom_du_layer2

  Paramètre_local_1 : valeur1

  Paramètre_local_2 : valeur2

 

  Paramètre_local_N : valeurN

}

 

Les tabulations (pour l’instant) sont illégales. Mettre plusieurs espaces à la place pour l’indentation. On peut ajouter autant de lignes vides que l’on veut.

L’ordre des paramètres globaux ou locaux est sans importance

 

Sauf indication contraire, ne pas utiliser de guillemets pour les valeurs qui sont du texte

 

On peut faire, après coup, une modif d’un paramètre d’un layer par la syntaxe suivante

nom_du_layer::nom_parametre :valeur

Cf. exemples "nut_act.txt" et "europe_nuts(0,1,2,3)_act.txt"

 

 

4 - Syntaxe des couleurs

 

Lettre pour la couleur suivi d’un chiffre pour l’intensité

 

Couleur : J(aune) C(yan) E(meraude) O(range) V(iolet) R(ouge) L(ila) M(arron) B(leu) G(ris) T(ransparent)

 

Chiffre : de 1 à 9. 1 étant le plus foncé et 9 le plus clair.

 

Exemples : G9 = blanc, G1 = noir

 

Si on ne précise pas le chiffre, la valeur 5 est prise par défaut

 

5 - Syntaxe des polices

 

Ex : Dialog-BOLD-20, Dialog-PLAIN-32, Dialog-ITALIC-12, Dialog-BOLDITALIC-14

Autres polices : DialogInput, Monospaced, Serif, SansSerif, Symbol

 

En fonction de la taille de la fenêtre cartographique (et en cas de réduction de celle-ci), le logiciel adapte au mieux la taille de la police.


Retour au MENU

 

6 - Paramètres globaux

 

 

nomImageGaucheTitre : nom_image (typiquement le logo)

nomImageDroiteTitre : nom_image (éventuellement un logo)

nomImageCentreTitre : nom_image (si précisé, remplace le titre textuel)

 

titreCarte : texte (avec éventuellement \n pour passer à la ligne)

uniteEchelle : texte (typiquement m ou km. si pas précisé, évaluation distances impossible)

copyrights : texte (avec éventuellement \n pour passer à la ligne)

                               

couleurFond : couleur (par défaut G9)

couleurFondTitre : couleur (par défaut G9)

couleurFondLegende : couleur (par défaut G9)

               

destURL : target (par défaut vaut _blank. autres val possibles _self ou _top)

               

couleurTitre : couleur (par défaut G1)

policeTitre : police (par défaut Dialog-BOLD-20)

 

masquerEstimation  (de distances): true ou false (false par défaut)

skipDataBox : true ou false (false par défaut. true pour faire du mapping simple)

            

facteurEchelle : flottant (par lequel toutes les coords sont multipliées -> 1 par défaut)

                 

listesNavigation : nom_fich_liste1, nom_fich_liste2, …, nom_fich_listeN

listesNavigationAutres : nom_fich_liste1, nom_fich_liste2, …, nom_fich_listeN



7 - Structure des fichiers de listes de navigation

 

titre_du_menu, rel(atif) ou abs(olu)

nom_clair_element_menu1,nom_fichier_script_1

nom_clair_element_menu2,nom_fichier_script_2

nom_clair_element_menuN,nom_fichier_script_N

 

Si on a précisé absolu, alors la signification de nom_fichier_script_1 est à prendre au pied de la lettre.

Si on a précisé relatif, alors nom_fichier_script_1 est en fait un « radical » du nom du fichier de script (en fait l’une des partie du nom).

 

Exemple, supposons que le script courant soit « toto_pop.txt » et que les radicaux précisés soient pop, act, nat. Alors si on fait le choix de l’élément « nat »,  le fichier script appelé pourra être  « toto_act.txt » ou « toto_nat.txt ». Un autre choix de radical aurait pu se porter sur la séquence « toto »…


Retour au MENU

 

8 - Paramètres locaux de couches (10 couches maximum)

 

nomLayer : texte

typeLayer : #TYPE_VECT# (par défaut) ou #TYPE_RASTER#

typeVect : #VECT_CONTOUR# (par défaut) ou #VECT_POINT# (utile uniquement si typeLayer vaut #TYPE_VECT#)

typeData : #DATA_NODATA# , #DATA_NONREP# (par défaut, des données présentes pas représentées), #DATA_COLORIE# (choroplèthes),

 #DATA_PROPORTIONNEL# ou #DATA_COLORIEPROPORTIONNEL#

typeSymbole : #SYMB_CERCLE# (par défaut), #SYMB_CARRE# ou #SYMB_BITMAP#

 

nomFichierGeo : nom_fichier_dmf (si layer vectoriel) ou nom_fichier_bitmap (si layer raster)

nomFichierData : nom_fichier_dmd

nomFichierSymbole : nom_fichier_bitmap_symbole (si typeSymbole vaut #SYMB_BITMAP#)

 

dimensionSymbole : entier (30 par défaut, utile si représentation ponctuelle non proportionnelle)

zoomMinimalEtiquettes : entier (1 par défaut)

nbDecimalesLegende : entier (2 par défaut)

facteurCorrectifSymbole : flottant (1 par défaut -> utile pour une représentation ponctuelle proportionnelle)

 

variableIndex : nom_de_la_variable_index_fichier_dmd (par défaut, le 1er champ)

couleurNR : couleur (aucune couleur définie par défaut)

couleurNS : couleur (aucune couleur définie par défaut)

couleurFond : couleur (aucune couleur définie par défaut. Si représentation ponctuelle non coloriée, mettre ici la couleur de remplissage des symboles)

couleurSymbole : couleur (couleur du symbole dans la légende)

couleurContour : couleur (par défaut G1)

couleurTexteSurCarte : couleur (par défaut G1)

discretisation : moyennesEmboitees (par défaut), egaleFrequence, egaleAmplitude, progressionArithmetique, progressionGeometrique, distributionClassique1, distributionClassique2, enumeration, liste ou manuelle

effectif : absolu ou relatif (pour la légende)

nombreClasses :  entier

identifiantSurCarte : entier 1,2 ou 3(numéro de l’identifiant du fichier dmd apparaissant sur la carte)

identifiantsInclusBulle : entier1, [entier2,] [entier 3] (par défaut, l’identifiant index)

 

variablesInclusesBulle : nom_champ1, nom_champ2, … (données. par défaut, la donnée représentée)

champLienURL : nom_champ1, nom_champ2, …

champLienTexte : nom_champ1, nom_champ2, …

variablesAffichees : nom_champ1, nom_champ2, … (boîte de dialogue. par défaut, tout)

 

variablesCalculees : var_calculee1, var_calculee 2 ,où var_calculee1 suit la syntaxe suivante mêlant opérateurs arithmétiques, opérateur conditionnel (test ternaire avec opérateurs de comparaison) :

variable_calculee1 = var1 / var2 + if (var3 > var4 ; NR ; 3) * var5

 

Attention, si varI contient un underscore, mettre obligatoirement la variable entre guillemets anglais (ex. "var_pop"). Ce underscore serait interprété comme un moins unaire.

Les test dans des formules calculées prennent en compte des variables de type texte.

Les opérateurs utilisés dans les formules sont classiques (rappel : opérateurs logiques binaires ET =  "&&", OU = "||")

Les niveaux de parenthèses sont gérés.

 


Retour au MENU

palette : soit un chiffre (dans ce cas dégradé de toutes les couleurs avec l’intensité du chiffre) , soit une lettre (dans ce cas dégradé de cette couleur), soit 2 lettres collées (ex RB pour une opposition de couleurs), soit une liste de couleurs séparée par des virgules (ex . de bonne palette manuelle : L7, B7, C, E, J, O, R3, V3). Par défaut, vaut 5.

luminositeRenversee : true ou false (par défaut)

teinteRenversee : true ou false (par défaut)

 

tabBornes : borne_inf_1, borne_inf_2, …, borne_inf_n, borne_sup_n (dans le cas de discrétisation manuelle. borne_inf_1 peut valoir –inf et borne_sup_n peut valoir +inf)

 

visible : true (par défaut) ou false à visibilité de la couche

enabled : true (par défaut) ou false. Si la couche est active (pointeur souris, recherche, etc.) ou non. Mettre false en général pour l’habillage

 

Toutes les variables suivantes ont les mêmes caractérisitques. Si on n’est pas dans le cas d’une représentation proportionnelle coloriée, il n’y a qu’une valeur à préciser. Dans le cas contraire 2 valeurs, la première étant celle qui correspond au coloriage et l’autre à la proportion

 

variableRep : nom_variable_a_representer [, …]

titreLegende : texte [, …] (Légende par défaut)

couleurTexteLegende : couleur [, …] (par défaut G1)

policeLegende : police [,…]  (par défaut Dialog-BOLD-12)

couleurBulle : couleur [,…] {par défaut J9 [,E9])

afficherLegende : true ou false [, …]

numGroupe : entier  (par défaut 0)

                                                                                                                                       

Les couches (layers) possédant le même numéro de groupe (>=1) sont exclusives les unes des autres. Ces couches doivent être consécutives dans le script. Ne définir comme visible : true que l’une des couches du groupe. Ainsi une seule est visible à la fois pour un groupe donné donc pour en afficher un autre, passer en menu contextuel (clic droit).    

Retour au MENU

 

EXEMPLES de fichiers scripts et de fichier liste de navigation

q       Fichier script de base ‘’dm_ex1.txt‘’

#include "constantes.h"

 

listesNavigation :  zones_dm.lst, niv_dm.lst, clh_dm.lst

 

couleurFondTitre : G9

//nomimagegauchetitre : animation4.gif

titrecARTe : PATRIMOINE\nLocalisation de groupes

policeTitre : dialog-bold-18

couleurTitre: R

couleurFond : G9

couleurFondLegende : G9

copyrights : \nSources:\n - fond adapté de GEOFLA® v. 6\n(C)2002 IGN - lic. 2002/CUDR/200\n - Infographie \n(C)2002... - OPAC 35\n\nReproduction interdite\nTous droits réservés\n\nClic droit \n- change de découpage,\n   niveau ou analyse\n- masque/affiche des infos,\n   des tableaux...

uniteEchelle : m

//  masquerEstimation : true

 

Layer {

  numGroupe : 2

  visible:false

  nomLayer : Plan de ville

  typeLayer : #TYPE_RASTER#

  nomFichierGeo : rennes.gif

  coords : 295240, 2358500, 10450, 9150

}

 

  Layer {

  numGroupe : 2

  nomLayer : Territoires

  nomFichierGeo : rn_ircl.dmf

  typeLayer : #TYPE_VECT#

  typeVect : #VECT_CONTOUR#

  typeData : #DATA_COLORIE#

//  typeSymbole : #SYMB_CARRE#

  couleurContour : G1

  couleurFond : T

  identifiantsinclusbulle : 2

  identifiantsurcarte : 1

  couleurtextesurcarte : G1

  zoomMinimalEtiquettes : 2

  variablesInclusesBulle :  DC_

//  variableIndex : no_clh

  champLienURL : LIEN_URL1,LIEN_URL2

  champLienTexte : LIEN_TXT1,LIEN_TXT2

  nomFichierData : clh_2002.dmd

//  variablesCalculees : pop=if("pop_99">10000;"pop_99"/2;"pop_99")

  variableRep : DC_

//  palette : O

  discretisation : enumeration

//  nombreClasses : 4

  titreLegende : Les C.L.H. de RENNES

  policeLegende : Dialog-BOLD-16, Dialog-BOLD-16

  couleurLegende : R,R

}

 

Layer {

  nomLayer : Les groupes

  nomFichierGeo : rn_gr.dmf

  typeLayer : #TYPE_VECT#

  typeVect : #VECT_POINT#

  typeData : #DATA_PROPORTIONNEL#

  typeSymbole : #SYMB_CERCLE#

  CouleurFond : E

  facteurCorrectifSymbole : 1

//  typeSymbole : #SYMB_BITMAP#

//  nomFichierSymbole : opac.gif

  titreLegende : Parc (nbre logts)

  policeLegende : Dialog-BOLD-14

  couleurLegende : G1, R

  champLienTexte : TXT

  champLienURL : URL

  couleurBulle : E5

  identifiantsinclusbulle :1, 2,3

  variablesInclusesBulle :  groupe, nb_log

  nomFichierData : phot_grn.dmd

//  variablesCalculees : PCT_RESERV = "NB_RESERV" / "NB_LOG" * 100

  variableRep : nb_log

//  variableIndex : CODE

  couleurFond : L9

  couleurSymbole : L5

  discretisation : egaleFrequence

  nombreClasses : 6

}

 

q       Fichier script dérivé ‘’dm_ex2.txt‘’

#include "dm_ex1.txt"

 

Plan de ville::visible:true

Territoires::typeData : #DATA_NODATA#

Territoires::visible:true

Territoires::identifiantsInclusBulle: 2,3

Territoires::nomFichierGeo : rn_irCA.dmf

 

Les groupes:: titreLegende : RENNES\nParc (nbre logts)\ndans les cantons

Les groupes:: couleurBulle : E5

 

q       Fichier de liste de navigation ‘’zones_dm.lst’’

Changer de découpage...,rel

Par agences OPAC,_ag

Par C.L.H.,_clh

Par canton,_ca

Par quartier,_qv"

 

 

ANNEXE sur les symboles proportionnels

 

q       Si l’étendue de la distribution va de 0 à x, une taille minimale est affectée à la plus petite valeur    

q       Si l’étendue va d’une valeur négative à une valeur positive, alors pour opposer celles-ci, il faut choisir typeData : #DATA_COLORIEPROPORTIONNEL# puis procéder ainsi :

o       Taille du symbole = Convertir en positives les valeurs négatives par la formule : ex. if(var<0 ; -var ; var)

o       Couleur du symbole = Affecter manuellement les bornes des valeurs affectées aux 2 couleurs : ex. min à 0 => rouge, 0 à max => vert.

 

        Touches des codes de caractères majuscules accentués (titres, copyright, légendes)

 

q       ALT + 0188 =  ¼

q       ALT + 0204 =  Ì

q       ALT + 0189 =  ½

q       ALT + 0205 =  Í

q       ALT + 0190 =  ¾

q       ALT + 0206 =  Î

q       ALT + 0192 =  À

q       ALT + 0207 =  Ï

q       ALT + 0193 =  Á

q       ALT + 0210 = Ò

q       ALT + 0194 =  Â

q       ALT + 0211 =  Ó

q       ALT + 0195 =  Ã

q       ALT + 0212 = Ô

q       ALT + 0196 =  Ä  

q       ALT + 0213 =  Õ

q       ALT + 0197 =  Å

q       ALT + 0214 =  Ö

q       ALT + 0198 =  Æ

q       ALT + 0216 =  Ø

q       ALT + 0199 =  Ç

q       ALT + 0217 =  Ù

q       ALT + 0200 =  È  

q       ALT + 0218 =  Ú

q       ALT + 0201 =  É  

q       ALT + 0219 =  Û

q       ALT + 0202 =  Ê

q       ALT + 0220 =  Ü

q       ALT + 0203 =  Ë

 



Retour au MENU

COMMUNIQUER de Javascript vers Dynamic Map®

_________________________

 

 

 

1 - Pour faire interagir un clic d'un cadre vers une carte affichée dans un autre cadre POUR UNE SELECTION CLIGNOTANTE:

=> mettre dans la page contenant le lien :

* une façon de faire:

q        une séquence javascript POUR A LA FOIS ZOOMER ET CLIGNOTER

<script>

function clignoterzoomer(nomObj) {

 

  applet = parent.frames["carte"].document.myApplet

  applet.action("zoomAbs", "2");

  applet.action("rechercher", "Les programmes::1::" + nomObj);

 

}

</script>

 

q        et un lien avec onClick ou onMouseOver
<A HREF="rennes.htm" target="carte" onMouseOver="clignoterzoomer('RENNES');">

 

"carte" est le nom du cadre cible
"rechercher" est la fonction DM sollicitée
"Les programmes" est le nom de la couche de la carte ciblée
"1" est le n° de l'identifiant utilisé pour la sélection automatique

"nomObj" est un générique variable selon le nom défini dans le lien <a href=...> ici 'RENNES'

 

* et une autre façon

<script>

function rechercherRennesSud() {

  applet = top.frames["principal"].document.myApplet

  applet.action("zoomAbs", "1");

  applet.action("rechercher", "Agence Rennes Sud::1::ag2");

}

 

function rechercherRennesLaTouche() {

  applet = top.frames["principal"].document.myApplet

  applet.action("zoomAbs", "1");

  applet.action("rechercher", "Agence Rennes la Touche::1::ag3");

}

 

function rechercherRedon() {

  applet = top.frames["principal"].document.myApplet

  applet.action("zoomAbs", "1");

  applet.action("rechercher", "Agence de Redon::1::ag5");

}

</script>

 

 

 - <a href="javascript:rechercherRennesSud()">l'agence RENNES Sud</a> (id_=ag2)<br>

 - <a href="javascript:rechercherRennesLaTouche()">l'agence RENNES la Touche</a> (id_=ag3)<br>

 - <a href="javascript:rechercherRedon()">l'agence REDON</a> (id_=ag5)

 

 

 


Retour au MENU

2 - Pour faire interagir un clic d'un lien hypertexte vers une carte incorporée dans le même page afin d'appeler un autre script (ici remplacer "MUT" par "SED) :

=> mettre dans la page contenant le lien :

q        une séquence javascript avant le <body>

<script>
function testFluxMut() {
document.myApplet.action("script", "tst_flux_MUT.txt")
}
</script>

q       ajouter la propriété name="myApplet" dans le tag<applet>
<applet code = "DynamicMap.class" archive = "DynamicMap.jar" width = 100% height = 93% name="myApplet">
<param name=script value="tst_flux_SED.txt">
</applet>

q       et le lien d'appel devient
<A HREF="javascript:testFluxMut() ">


3 - Pour afficher/masquer (bascule) une couche d'une page affichée
(applet nommée "myApplet") :

=> mettre dans la page contenant le lien :

q        une séquence javascript
<script>

function change() {
document.myApplet.action
("changeVisibility", "Routes")
}
</script>

q       et le lien d'appel devient
<A HREF="javascript:change() ">

"Routes" est le nom de la couche affectée

4 - Pour activer/desactiver l'affichage en MENU CONTEXTUEL ou la fonction de RECHERCHE dans une page affichée (applet nommée "myApplet") :

=> mettre dans la page contenant le lien :

q       une séquence javascript

<script>

function inMenu() {
document.myApplet.action
("setParam", "Routes::inMenu:true")
}

function offMenu() {
document.myApplet.action
("setParam", "Routes::inMenu:false")
}

function inRechercher() {
document.myApplet.action
("setParam", "Routes::inRechercher:true")
}

function offRechercher() {
document.myApplet.action
("setParam", "Routes::inRechercher:false")
}
</script>

q       et les liens d'appel deviennent
<A HREF="javascript: inMenu() "><br>

<A HREF="javascript: offMenu() "><br>

<A HREF="javascript: inRechercher() "><br>

<A HREF="javascript: offRechercher() "><br>

"Routes" est le nom de la couche affectée

Retour au MENU

5 - Pour demander d'afficher un objet recherché à partir d'une liste déroulante au sein d'une page affichée
(applet nommée "myApplet") :

q       dans un fichier liste //, ici "liste_com_35.js" (appelé dans le formulaire du <body>) :

var listeCom = new Array(

"","",

"35001","ACIGNE",

"35002","AMANLIS",

etc

"35360","VITRE",

"35361","VIVIER-SUR-MER_(Le)"

);

 

q       dans le <head>

<script>
function change() {
nom=document.Form.Location.options[document.Form1.Location.selectedIndex].value
document.myApplet.action("rechercher","Communes d'implantation::1::" + nom);
}
</script>

q       dans le <body>

<script language="javascript" type="text/javascript" src="liste_com_35.js">
</script>

<form name='Form'>
<select name='Location' onchange='change()'>

<script>
for(i=0;i<listeCom.length/2;i++) {
document.write("<option value="+ listeCom[2*i] + ">"+listeCom[2*i+1]);
}
</script>
       
</select>
</form>

 

<APPLET code = "DynamicMap.class" archive = "DynamicMap.jar"  width=100% height=100% name=myApplet>
<PARAM name=script value="com_portail.txt" >
</APPLET>


Retour au MENU

6 - Pour provoque un clignotement (et/ou un zoom) à partir de l'évènement ouverture de la page avec applet
(applet nommée "myApplet") :

q       dans le <body> du  fichier appelé:

<script>

function NotifieEventDM(param1, param2) {

  if (param1 == "start") {

    document.myApplet.action("rechercher", "Les agences::1::ag5");

  }

}

</script>

q       ne pas oublier  'name=myApplet MAYSCRIPT' dans la balise <applet>

<APPLET code = "DynamicMap.class" archive = "DynamicMap.jar"  width=100% height=100% name=myApplet MAYSCRIPT>

<PARAM name=script value="ag_plans_acces.txt" >

<param name=callback value="NotifieEventDM">

</APPLET>

 

 

7 - Pour provoque une animation avec effet "zoom out" lors de l'ouverture d'une page comportant  l'applet
(applet nommée "myApplet") :

q       dans le <body> du  fichier appelé:

<script>
zoomLevel = 0;

function NotifieEventDM(param1, param2) {
if (param1 == "start") {
zoomLevel = 7;
dezoom();
}
}

function dezoom() {
if (zoomLevel >= 0) {
setTimeout("dezoom()", 300); // remplace 300 par autre chose pour modifier la vitesse de dezoom
document.myApplet.action("zoomAbs", zoomLevel--)
}
}
</script>

q       ne pas oublier  'name=myApplet MAYSCRIPT' dans la balise <applet>

<APPLET code = "DynamicMap.class" archive = "DynamicMap.jar"  width=100% height=100% name=myApplet MAYSCRIPT>

<PARAM name=script value="ag_vues.txt" >

<param name=callback value="NotifieEventDM">

</APPLET>

 

<a href=opac35.free.fr/>Dynamic Map</a> <a href=opac35.free.fr/dynamicmap/>Dynamic Map</a> <a href=opac35.free.fr/dynamicmap/menu_dm.htm>Dynamic Map</a> <a href=opac35.free.fr/dynamicmap/menu_us.htm>Dynamic Map</a> FREEWARE, freeware, shareware, libre, gratuit, no charge