diff options
Diffstat (limited to 'macros/latex/contrib/profcollege/latex/PfCCartographie.tex')
-rw-r--r-- | macros/latex/contrib/profcollege/latex/PfCCartographie.tex | 58 |
1 files changed, 55 insertions, 3 deletions
diff --git a/macros/latex/contrib/profcollege/latex/PfCCartographie.tex b/macros/latex/contrib/profcollege/latex/PfCCartographie.tex index ec56dceb89..2b5ef28fbc 100644 --- a/macros/latex/contrib/profcollege/latex/PfCCartographie.tex +++ b/macros/latex/contrib/profcollege/latex/PfCCartographie.tex @@ -1,7 +1,7 @@ %%% % Cartographie %%% -\setKVdefault[Cartographie]{Echelle=1,Carte=false,All=false,Europe=false,Asie=false,Amsud=false,Amnord=false,Amcentre=false,Caraibes=false,Afrique=false,AfficheEchelle=false,PaysSeul=false,VillesSup=false,VillesSupI=false,Capitales=false,Impression=false,Fleuves=false,CouleurFond=ciel,Largeur=12,Hauteur=12,Arborescence="/usr/local/texlive/2023/texmf-dist/metapost/profcollege/",Projection=false,TypeProjection="mercator",CouleurPays=Cornsilk,Pasl=2,PasL=2,Codes=false,Epaisseur=2,ModeleCouleur,Boussole=false,Allegee=1} +\setKVdefault[Cartographie]{Echelle=1,Carte=false,All=false,Europe=false,Asie=false,Amsud=false,Amnord=false,Amcentre=false,Caraibes=false,Afrique=false,AfficheEchelle=false,PaysSeul=false,VillesSup=false,VillesSupI=false,Capitales=false,Impression=false,Fleuves=false,CouleurFond=ciel,Largeur=12,Hauteur=12,Arborescence="/usr/local/texlive/2023/texmf-dist/metapost/profcollege/",Projection=false,TypeProjection="mercator",CouleurPays=Cornsilk,Pasl=2,PasL=2,Codes=false,Epaisseur=2,ModeleCouleur=5,Boussole=false,Allegee=1} \defKV[Cartographie]{EchelleCarte=\setKV[Cartographie]{Carte}} \defKV[Cartographie]{Pays=\setKV[Cartographie]{PaysSeul}} \defKV[Cartographie]{Villes=\setKV[Cartographie]{VillesSup}} @@ -233,10 +233,11 @@ Epaisseur:=\useKV[Cartographie]{Epaisseur}; distanceecran=100*\useKV[Cartographie]{Echelle}; fleuves:=\useKV[Cartographie]{Fleuves}; - boolean Carte,Impression,VillesSup,Codes; + boolean Carte,Impression,VillesSup,VillesSupI,Codes; Carte=\useKV[Cartographie]{Carte}; Impression=\useKV[Cartographie]{Impression}; VillesSup=\useKV[Cartographie]{VillesSup}; + VillesSupI=\useKV[Cartographie]{VillesSupI}; Codes=\useKV[Cartographie]{Codes}; if defaultcolormodel=7: cmykcolor couleurfond,white,payscolor,couleurfleuve; @@ -268,6 +269,53 @@ Amcentrale:=\useKV[Cartographie]{Amcentre}; Caraibes:=\useKV[Cartographie]{Caraibes}; Afrique:=\useKV[Cartographie]{Afrique}; + + vardef Villes(text t)= + pair CoordVille; + string NomVille; + n:=0; + for p_:=t: + n:=n+1; + if n=1: + %nblec:=p; + else: + if pair p_: + if projection="mercator": + CoordVille:=mercatorc(ypart(p_),xpart(p_)); + elseif projection="winkel": + CoordVille:=winkelc(ypart(p_),xpart(p_)); + elseif projection="cylindrique": + CoordVille:=cylindriquec(ypart(p_),xpart(p_)); + elseif projection="simple": + CoordVille:=simplec(ypart(p_),xpart(p_)); + elseif projection="bonne": + CoordVille:=bonnec(ypart(p_),xpart(p_)); + fi; + elseif string p_: + NomVille:=p_; + else: + marque_p:="croix"; + pointe(CoordVille); + label.position(p_)(TEX(""&NomVille&""),CoordVille); + fi; + fi; + endfor; + drawoptions(); + enddef; + + def position(expr t)= + if t=1:rt + elseif t=2:urt + elseif t=3:top + elseif t=4:ulft + elseif t=5:lft + elseif t=6:llft + elseif t=7:bot + elseif t=8:lrt + fi + enddef; + + if Carte: Echelle:=\useKV[Cartographie]{AfficheEchelle}; figure(-0.5u*LargeurCadre,-0.5u*HauteurCadre,0.5u*LargeurCadre,0.5u*HauteurCadre); @@ -308,10 +356,14 @@ endfor; drawoptions(); closefrom nomfichiermul; - fi; + fi; + if VillesSupI: + Villes(\useKV[Cartographie]{VillesI}); + fi; if Codes: \useKV[Cartographie]{Traces}; fi; + else: draw(0,0)--(50,50); mappemonde(#2,#3); |