summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/metapost/PfCSolid.mp
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/profcollege/metapost/PfCSolid.mp')
-rw-r--r--macros/latex/contrib/profcollege/metapost/PfCSolid.mp85
1 files changed, 85 insertions, 0 deletions
diff --git a/macros/latex/contrib/profcollege/metapost/PfCSolid.mp b/macros/latex/contrib/profcollege/metapost/PfCSolid.mp
index 829fad5d30..342b992167 100644
--- a/macros/latex/contrib/profcollege/metapost/PfCSolid.mp
+++ b/macros/latex/contrib/profcollege/metapost/PfCSolid.mp
@@ -988,4 +988,89 @@ def alphafill_(expr p, c) =
endgroup;
enddef;
+vardef Cercles(text t)=
+ save Cer;
+ save n;
+ n:=0;
+ for p_=t:
+ if color p_:
+ n:=n+1;
+ _T[n]:=p_;
+ fi;
+ endfor;
+ path Cer;
+ color ptcer[];
+ for k=0 step 5 until 360 :
+ ptcer[k div 5]-_T[1]=Distance(_T[1],_T[2])*((_T[4]-_T[3])*cosd(k)/Distance(_T[3],_T[4])+(_T[5]-_T[3])*sind(k)/Distance(_T[3],_T[5]));
+ endfor;
+ Cer=Projette(ptcer0)
+ for k=0 step 5 until 360 :
+ ..Projette(ptcer[k div 5])
+ endfor
+ ..cycle;
+ Cer
+enddef;
+
+vardef Label@#(expr s,z)=
+ save p; picture p;
+ label@#(s,Projette(z));
+enddef;
+vardef DotLabel@#(expr s,z)=
+ save p; picture p;
+ dotlabel@#(s,Projette(z));
+enddef;
+
+vardef DefinirSommets(text t)=
+ color t;
+ nbauto:=0;
+ for p_=t:
+ nbauto:=nbauto+1;
+ if unknown p_:p_=Sommet[nbauto]; else: p_:=Sommet[nbauto] fi;
+ endfor;
+enddef;
+
+vardef DefinirSommetsSection(text t)=
+ color t;
+ nbauto:=0;
+ for p_=t:
+ nbauto:=nbauto+1;
+ if unknown p_:p_=MSection[nbauto]; else: p_:=MSection[nbauto] fi;
+ endfor;
+enddef;
+
+vardef EcrireSommetsPave(text t)=
+ if AutoLabel:
+ nb:=0;
+ for p_=t:
+ nb:=nb+1;
+ if nb=1:
+ label.llft(TEX(""&p_&""),Projette(Sommet1));
+ fi;
+ if nb=2:
+ label.lrt(TEX(""&p_&""),Projette(Sommet2));
+ fi;
+ if nb=3:
+ label.rt(TEX(""&p_&""),Projette(Sommet3));
+ fi;
+ if nb=4:
+ if Pointilles:
+ label.ulft(TEX(""&p_&""),Projette(Sommet4));
+ fi;
+ fi;
+ if nb=5:
+ label.ulft(TEX(""&p_&""),Projette(Sommet5));
+ fi;
+ if nb=6:
+ label.lft(TEX(""&p_&""),Projette(Sommet6));
+ fi;
+ if nb=7:
+ label.lrt(TEX(""&p_&""),Projette(Sommet7));
+ fi;
+ if nb=8:
+ label.urt(TEX(""&p_&""),Projette(Sommet8));
+ fi;
+ endfor;
+ fi;
+enddef;
+
endinput;