Ich habe eine Frage zum Zugriff auf den mathematischen Wert von count in \foreach
. Ich werde diesen Wert verwenden, um im folgenden Code einige Berechnungen durchzuführen. Aber es hat nicht funktioniert.
\documentclass[margin=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows,calc}
\begin{document}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1.0cm,y=1.0cm]
\clip(-2.5,-3) rectangle (2.5,2.5);
% defining coordinates
\coordinate (origin) at (0,0);
\coordinate (1) at (0,2);
\coordinate (2) at ($(origin)!1!120:(1)$);
\coordinate (3) at ($(origin)!1!120:(2)$);
\coordinate (1_) at ($(origin)!0.8!-5:(1)$);
\coordinate (2_) at ($(origin)!0.8!-5:(2)$);
\coordinate (3_) at ($(origin)!0.8!-5:(3)$);
\coordinate (_1) at ($(origin)!0.8!5:(1)$);
\coordinate (_2) at ($(origin)!0.8!5:(2)$);
\coordinate (_3) at ($(origin)!0.8!5:(3)$);
% draw the circle
\draw [color=black, line width=0.5pt](origin) circle (2 cm);
%draw symmetry elements
\foreach \coordname in {1,2,3}
\draw [line width=0.5pt, color=black] (\coordname)-- ($(origin)!1!180:(\coordname)$);
\foreach \coordname [count=\i] in {1,2,3}{
\draw[color=black,font=\large] (\coordname) node {\rotatebox{120}{rota}};}
\draw[color=black,font=\large] (origin) node {rota};
% draw plane group notaton
\draw[color=black] (0,-2.5) node {$222$};
\end{tikzpicture}
\end{document}
Ich möchte, dass der Text rota
je nach Position des Textes der Richtung der Kreiskurve folgt.
Dann füge ich etwas Code hinzu:
\documentclass[margin=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows,calc}
\begin{document}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1.0cm,y=1.0cm]
\clip(-2.5,-3) rectangle (2.5,2.5);
% defining coordinates
\coordinate (origin) at (0,0);
\coordinate (1) at (0,2);
\coordinate (2) at ($(origin)!1!120:(1)$);
\coordinate (3) at ($(origin)!1!120:(2)$);
\coordinate (1_) at ($(origin)!0.8!-5:(1)$);
\coordinate (2_) at ($(origin)!0.8!-5:(2)$);
\coordinate (3_) at ($(origin)!0.8!-5:(3)$);
\coordinate (_1) at ($(origin)!0.8!5:(1)$);
\coordinate (_2) at ($(origin)!0.8!5:(2)$);
\coordinate (_3) at ($(origin)!0.8!5:(3)$);
% draw the circle
\draw [color=black, line width=0.5pt](origin) circle (2 cm);
%draw symmetry elements
\foreach \coordname in {1,2,3}
\draw [line width=0.5pt, color=black] (\coordname)-- ($(origin)!1!180:(\coordname)$);
\foreach \coordname [count=\i] in {1,2,3}{
\pgfmathsetmacro{\n}{\numbers[\i]}; % add
\draw[color=black,font=\large] (\coordname) node {\rotatebox{-120+30*\n}{rota}};} %some modification
\draw[color=black,font=\large] (origin) node {rota};
% draw plane group notaton
\draw[color=black] (0,-2.5) node {$222$};
\end{tikzpicture}
\end{document}
Es hat nicht funktioniert. Hat jemand eine Idee, was hier falsch ist? Danke
Antwort1
In Ihrem Beispiel haben Sie also … \numbers[\i]
und ich bin mir nicht ganz sicher, worauf es sich bezieht. Ich habe Teile des Codes entfernt, die nicht funktionierten, und versucht herauszufinden, wonach Sie gesucht haben. Hier ist mein Ergebnis:
\documentclass[tikz,convert]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (origin) at (0,0);
% draw the circle
\draw [color=black, line width=0.5pt] (origin) circle (2 cm);
% draw symmetry elements
\foreach \coordname [count=\i] in {1,2,...,6} {
\draw [rotate around={60*\i:(origin)}]
(origin) -- +(2, 0)
node [rotate=60*\i, pos=1, right] {rota};
\coordinate (c\coordname) at ($(origin) + (60*\i:2)$);
}
\draw (c1) -- (c2) -- (c3) -- (c4) -- (c5) -- (c6) -- cycle;
\end{tikzpicture}
\end{document}
und die Ausgabe:
Ich hoffe, das ist ein hilfreicher Ausgangspunkt für Sie. Wenn Sie Fragen dazu haben, wie Teile davon funktionieren, können Sie gerne einen Kommentar hinterlassen.
Antwort2
Ich lade meine Lösung zu dieser Frage hoch.
\documentclass[margin=10pt]{standalone}
\DeclareFontFamily{U}{cry}{\hyphenchar\font=-1}
\DeclareFontShape{U}{cry}{m}{n}{ <-> cryst}{}
\newcommand{\cry}[1]{{\usefont{U}{cry}{m}{n} \symbol{#1}}}
\usepackage{tikz}
\usetikzlibrary{arrows,calc}
\begin{document}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1.0cm,y=1.0cm]
\clip(-2.5,-3) rectangle (2.5,2.5);
% defining coordinates
\coordinate (origin) at (0,0);
\coordinate (1) at (0,2);
\coordinate (2) at ($(origin)!1!120:(1)$);
\coordinate (3) at ($(origin)!1!120:(2)$);
% draw the circle
\draw [color=black, line width=0.5pt](origin) circle (2 cm);
%draw symmetry elements
\foreach \coordname in {1,2,3}
\draw [line width=0.5pt, color=black] (\coordname)-- ($(origin)!1!180:(\coordname)$);
\foreach \coordname [count=\i] in {1,2,3}{
\draw[color=black,font=\large] (\coordname) node [rotate=-210+120*\i] {\cry{2}};
\draw[color=black,font=\large] ($(origin)!-1!(\coordname)$) node [rotate=-210+120*\i] {\cry{2}};
}
\draw[color=black,font=\large] (origin) node {\cry{3}};
% draw plane group notaton
\draw[color=black] (0,-2.5) node {$32$};
\end{tikzpicture}
\end{document}