summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/metapost/PfCMonde.mp
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/profcollege/metapost/PfCMonde.mp')
-rw-r--r--macros/latex/contrib/profcollege/metapost/PfCMonde.mp56
1 files changed, 45 insertions, 11 deletions
diff --git a/macros/latex/contrib/profcollege/metapost/PfCMonde.mp b/macros/latex/contrib/profcollege/metapost/PfCMonde.mp
index 11051483e4..fb3064cefd 100644
--- a/macros/latex/contrib/profcollege/metapost/PfCMonde.mp
+++ b/macros/latex/contrib/profcollege/metapost/PfCMonde.mp
@@ -32,6 +32,9 @@ payscolor=tan;
vardef flamme=reverse(2mm*(0.5,1){dir90}..2mm*(0.75,1.5)..{dir90}2mm*(1,2))--2mm*(0.5,1){dir=-90}..2mm*(1,0.5)..{dir=90}2mm*(1.5,1)--((2mm*(0.5,1){dir90}..2mm*(0.75,1.5)..{dir90}2mm*(1,2)) reflectedabout (2mm*(1,0),2mm*(1,0)+2mm*(0,1)))--cycle
enddef;
+%
+pair poubelle;
+
%Les marques
string marque_p;
@@ -629,13 +632,23 @@ vardef lecturep(expr nomfichier,fond)=
nbpts:=scantokens readfrom nomfichier;
numeric ll;
ll=0;
- for k=1 upto nbpts:
+ if nbpts<Allegee:
+ Alleg:=4;
+ else:
+ Alleg:=Allegee;
+ fi;
+% for k=1 upto nbpts:
+ for k=1 upto (nbpts div Alleg):
pair latlon;
- latlon=scantokens readfrom nomfichier;
+% latlon=scantokens readfrom nomfichier;
+% latlon=((scantokens readfrom nomfichier)+(scantokens readfrom nomfichier)+(scantokens readfrom nomfichier))/3;
+ latlon=((scantokens readfrom nomfichier) for l=2 upto Alleg:
+ +(scantokens readfrom nomfichier)
+ endfor)/Alleg;
if projection="mercator":
- Coord[k]=mercatorc(xpart(latlon/60),ypart(latlon/60))
+ Coord[k]=mercatorc(xpart(latlon/60),ypart(latlon/60));
elseif projection="winkel":
- Coord[k]=winkelc(xpart(latlon/60),ypart(latlon/60))
+ Coord[k]=winkelc(xpart(latlon/60),ypart(latlon/60));
elseif projection="cylindrique":
Coord[k]=cylindriquec(xpart(latlon/60),ypart(latlon/60));
elseif projection="simple":
@@ -661,11 +674,14 @@ vardef lecturep(expr nomfichier,fond)=
fi;
if ll>0:
pays=Coord[1]
- for l=4 step 3 until ll:%upto ll:
+% for l=4 step 3 until ll:%upto ll:4-3
+ for l=2 upto (nbpts div Alleg):
--Coord[l]
endfor;
if noncolore=true:
- fill pays--cycle withcolor payscolor;
+ if Impression=false:
+ fill pays--cycle withcolor payscolor;
+ fi;
else:
fill pays--cycle withcolor fond;
fi;
@@ -689,9 +705,20 @@ vardef Lectureilesp=
fond=scantokens readfrom nomfichiermul;
numeric ll;
ll=0;
- for k=1 upto nbpts:
+%%%%%%%%%%%%
+ if nbpts<Allegee:
+ Alleg:=1;
+ else:
+ Alleg:=Allegee;
+ fi;
+ %%%%%%%%
+% for k=1 upto nbpts:
+ for k=1 upto (nbpts div Alleg):
pair latlon;
- latlon=scantokens readfrom nomfichiermul;
+% latlon=scantokens readfrom nomfichiermul;
+ latlon=((scantokens readfrom nomfichiermul) for l=2 upto Alleg:
+ +(scantokens readfrom nomfichiermul)
+ endfor)/Alleg;
if projection="mercator":
Coord[k]=mercatorc(xpart(latlon/60),ypart(latlon/60));
elseif projection="winkel":
@@ -716,13 +743,14 @@ vardef Lectureilesp=
endfor;
path pays;
if (projection="mercator") or (projection="winkel") or (projection="cylindrique") or (projection="simple") or (projection="bonne"):
- ll:=nbpts
+ ll:=(nbpts div Alleg)
fi;
if ll>0:
pays=Coord[1]
- for l=2 upto ll:
+% for l=2 upto ll:
+ for l=2 upto (nbpts div Alleg):
--Coord[l]
- endfor;
+ endfor;
if noncolore=true:
fill pays--cycle withcolor payscolor;
else:
@@ -730,6 +758,12 @@ vardef Lectureilesp=
fi;
draw pays;
fi;
+ % rustine pour tout lire chaque partie de Ile.dat
+ if Alleg>1:
+ for po=1 upto (nbpts mod Alleg):
+ poubelle:=scantokens readfrom nomfichiermul;
+ endfor;
+ fi;
endfor;
closefrom nomfichiermul;
if (projection="mercator") or (projection="winkel") or (projection="cylindrique") or (projection="simple"):