diff options
Diffstat (limited to 'macros/latex/contrib/profcollege/metapost/PfCSolid.mp')
-rw-r--r-- | macros/latex/contrib/profcollege/metapost/PfCSolid.mp | 85 |
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; |