summaryrefslogtreecommitdiff
path: root/graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-02-21 03:01:57 +0000
committerNorbert Preining <norbert@preining.info>2023-02-21 03:01:57 +0000
commitb05164a5b679570a7040f2b28bbf156a0479c429 (patch)
treeda7f6b6f1c9dc1b41ffd5cd0998efb319d85a88d /graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty
parent5eb36ac321647ea1d7118566b9520a0e8a622203 (diff)
CTAN sync 202302210301
Diffstat (limited to 'graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty')
-rw-r--r--graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty107
1 files changed, 106 insertions, 1 deletions
diff --git a/graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty b/graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty
index 6943745a3c..acc0051592 100644
--- a/graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty
+++ b/graphics/pgf/contrib/tangramtikz/tex/TangramTikz.sty
@@ -3,7 +3,8 @@
% Inspiration....: https://tex.stackexchange.com/questions/407449/typesetting-tangram-figures-in-latex
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{TangramTikz}[2023/02/17 v0.1.3 Tangram Puzzles with TikZ]
+\ProvidesPackage{TangramTikz}[2023/02/18 v0.1.4 Tangram Puzzles with TikZ]
+% 0.1.4 Ajout de modèles
% 0.1.3 Ajout de modèles
% 0.1.2 Ajout de modèles
% 0.1.1 Ajout de modèles
@@ -686,6 +687,98 @@
}%
}
+%the factory / l'usine (0.1.4)
+\NewDocumentCommand\TangramFactory{ s O{TangPuzz} }{%*=colorcorrection,[key for pic]
+ \IfBooleanTF{#1}%
+ {%
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<rotate=135>({0},{0}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<rotate=-135>({0},{2*sqrt(2)}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[2]}]<rotate=45>({-sqrt(2)},{sqrt(2)}){TangMoyTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[4]}]({-1},{2*sqrt(2)}){TangCar}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=135>({0.5*sqrt(2)-0.5},{2*sqrt(2)+1}){TangPetTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[5]}]<xscale=-1,rotate=90>({-2*sqrt(2)},{0}){TangPara}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=-180>({-2*sqrt(2)+1},{2}){TangPetTri}
+ }%
+ {%
+ \PieceTangram[#2]<rotate=135>({0},{0}){TangGrandTri}
+ \PieceTangram[#2]<rotate=-135>({0},{2*sqrt(2)}){TangGrandTri}
+ \PieceTangram[#2]<rotate=45>({-sqrt(2)},{sqrt(2)}){TangMoyTri}
+ \PieceTangram[#2]({-1},{2*sqrt(2)}){TangCar}
+ \PieceTangram[#2]<rotate=135>({0.5*sqrt(2)-0.5},{2*sqrt(2)+1}){TangPetTri}
+ \PieceTangram[#2]<xscale=-1,rotate=90>({-2*sqrt(2)},{0}){TangPara}
+ \PieceTangram[#2]<rotate=-180>({-2*sqrt(2)+1},{2}){TangPetTri}
+ }%
+}
+
+%the angel / l'ange (0.1.4)
+\NewDocumentCommand\TangramAngel{ s O{TangPuzz} }{%*=colorcorrection,[key for pic]
+ \IfBooleanTF{#1}%
+ {%
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=135>({0},{0}){TangPetTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[5]}]<rotate=90>({0},{0}){TangPara}
+ \PieceTangram[TangSol={\TanGListeCouleurs[2]}]<rotate=90>({0},{1}){TangMoyTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=-90>({0},{2.5}){TangPetTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[4]}]<rotate=-45>({0},{3}){TangCar}
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<rotate=67.5>({0},{3}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<xscale=-1,rotate=5>({0},{3}){TangGrandTri}
+ }%
+ {%
+ \PieceTangram[#2]<rotate=135>({0},{0}){TangPetTri}
+ \PieceTangram[#2]<rotate=90>({0},{0}){TangPara}
+ \PieceTangram[#2]<rotate=90>({0},{1}){TangMoyTri}
+ \PieceTangram[#2]<rotate=-90>({0},{2.5}){TangPetTri}
+ \PieceTangram[#2]<rotate=-45>({0},{3}){TangCar}
+ \PieceTangram[#2]<rotate=67.5>({0},{3}){TangGrandTri}
+ \PieceTangram[#2]<xscale=-1,rotate=5>({0},{3}){TangGrandTri}
+ }%
+}
+
+%the tower / la tour (0.1.4)
+\NewDocumentCommand\TangramTower{ s O{TangPuzz} }{%*=colorcorrection,[key for pic]
+ \IfBooleanTF{#1}%
+ {%
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]({-2},{0}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<rotate=-90>({0},{2}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[5]}]<rotate=-90>({0},{3}){TangPara}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=-135>({1},{2+sqrt(2)}){TangPetTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[2]}]<rotate=180>({2-0.5*sqrt(2)},{3+0.5*sqrt(2)}){TangMoyTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[4]}]({0},{3+0.5*sqrt(2)}){TangCar}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=135>({0.5+0.5*sqrt(2)},{4+0.5*sqrt(2)}){TangPetTri}
+ }%
+ {%
+ \PieceTangram[#2]({-2},{0}){TangGrandTri}
+ \PieceTangram[#2]<rotate=-90>({0},{2}){TangGrandTri}
+ \PieceTangram[#2]<rotate=-90>({0},{3}){TangPara}
+ \PieceTangram[#2]<rotate=-135>({1},{2+sqrt(2)}){TangPetTri}
+ \PieceTangram[#2]<rotate=180>({2-0.5*sqrt(2)},{3+0.5*sqrt(2)}){TangMoyTri}
+ \PieceTangram[#2]({0},{3+0.5*sqrt(2)}){TangCar}
+ \PieceTangram[#2]<rotate=135>({0.5+0.5*sqrt(2)},{4+0.5*sqrt(2)}){TangPetTri}
+ }%
+}
+
+%the UFO / l'OVNI (0.1.4)
+\NewDocumentCommand\TangramUfo{ s O{TangPuzz} }{%*=colorcorrection,[key for pic]
+ \IfBooleanTF{#1}%
+ {%
+ \PieceTangram[TangSol={\TanGListeCouleurs[4]}]<rotate=-135>({0},{0}){TangCar}
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<rotate=90>({2},{-2}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[1]}]<rotate=180>({0},{0}){TangGrandTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[2]}]({-1},{0}){TangMoyTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[5]}]<rotate=-90>({2},{0}){TangPara}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]({-3},{-1}){TangPetTri}
+ \PieceTangram[TangSol={\TanGListeCouleurs[3]}]<rotate=180>({-2},{-1}){TangPetTri}
+ }%
+ {%
+ \PieceTangram[#2]<rotate=-135>({0},{0}){TangCar}
+ \PieceTangram[#2]<rotate=90>({2},{-2}){TangGrandTri}
+ \PieceTangram[#2]<rotate=180>({0},{0}){TangGrandTri}
+ \PieceTangram[#2]({-1},{0}){TangMoyTri}
+ \PieceTangram[#2]<rotate=-90>({2},{0}){TangPara}
+ \PieceTangram[#2]({-3},{-1}){TangPetTri}
+ \PieceTangram[#2]<rotate=180>({-2},{-1}){TangPetTri}
+ }%
+}
+
%macros for tangram creation / commandes pour créer le tangram
\NewDocumentCommand\TangramTikzCreateEN{ m }{%
\readlist*\TanGListeCouleurs{\TangColors}%
@@ -808,6 +901,18 @@
%LION
\IfStrEq{#3}{Lions}{\TangramTikzCreateEN{\TangramLion}}{}%
\IfStrEq{#3}{Lion}{\TangramTikzCreateFR{\TangramLion}}{}%
+ %FACTORY
+ \IfStrEq{#3}{Factory}{\TangramTikzCreateEN{\TangramFactory}}{}%
+ \IfStrEq{#3}{Usine}{\TangramTikzCreateFR{\TangramFactory}}{}%
+ %ANGEL
+ \IfStrEq{#3}{Angel}{\TangramTikzCreateEN{\TangramAngel}}{}%
+ \IfStrEq{#3}{Ange}{\TangramTikzCreateFR{\TangramAngel}}{}%
+ %TOWER
+ \IfStrEq{#3}{Tower}{\TangramTikzCreateEN{\TangramTower}}{}%
+ \IfStrEq{#3}{Tour}{\TangramTikzCreateFR{\TangramTower}}{}%
+ %UFO
+ \IfStrEq{#3}{Ufo}{\TangramTikzCreateEN{\TangramUfo}}{}%
+ \IfStrEq{#3}{Ovni}{\TangramTikzCreateFR{\TangramUfo}}{}%
\end{tikzpicture}%
}