-% ------------------------------------------------------------------------------
-/Pas 1 def
-% ------------------------------------------------------------------------------
-/Construction {
- /region exch def
- newpath
- /nbr region length def
- region 0 get aload pop
- /Y exch def /X exch def
- X Y moveto
- /ncount 0 def
- 0 1 nbr 1 sub {
- /ncount ncount 1 add def
- region exch get aload pop
- ncount Pas mod 0 eq nbr ncount sub 0 lt or {
- /Y exch def /X exch def
- X Y lineto
- }{ pop pop } ifelse
- } for
-} def
-
-%% PlacePoint et PlaceNom ------------------------------------------------------
-%% [e n (nom) angle] PlacePoint ensuite PlaceNom récupére ce qu'il lui faut dans
-%% dictionnaire disquedict
-/disquedict 10 dict def
-disquedict /mtrx matrix put
-
-/Nom (Ville) def
-/Position -1 def
-/PlacePoint {
- aload pop
- /Position exch def
- /Nom exch def
- newpath
- disquedict begin
- /Y exch def /X exch def
- /savematrix mtrx currentmatrix def
- X Y translate RayonDisque dup scale
- 0 0 1 0 360 arc
- savematrix setmatrix
- end
-} def
-
-/PlaceNom {
- Position -1 gt {
- disquedict begin
- /savematrix mtrx currentmatrix def
- X Y translate
- %% Dimension (largeur) du nom -------------------------
- Nom stringwidth pop /WX exch def
- %% ----------------------------------------------------
- Position cos LabelOffset mul /X exch def
- Position sin LabelOffset mul /Y exch def
- X 0 gt {
- %% Nom à droite
- X Y HauteurCaractere 2 sub moveto
- } {
- X 0 lt {
- %% Nom à gauche
- X WX sub Y HauteurCaractere 2 div sub moveto
- } {
- Y 0 gt {
- %% Nom au dessus
- X WX 2 div sub Y moveto
- } {
- %% Nom en dessous
- X WX 2 div sub Y HauteurCaractere sub moveto
- } ifelse
- } ifelse
- } ifelse
- %% Présentation du nom --------------------------------
- 0.7 setgray Nom show
- CouleurNom WX neg 0.65 sub 0.65 rmoveto Nom show
- %% ----------------------------------------------------
- savematrix setmatrix
- end
- } if
-} def
-% ------------------------------------------------------------------------------
-
-1 setlinejoin
-