count の数学的値へのアクセスについて質問があります\foreach
。次のコードではその値を使用して計算を行います。しかし、うまくいきませんでした。
\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}
rota
テキストの位置に応じて、テキストが円の曲線の方向に沿うようにする必要があります。
次に、コードをいくつか追加します。
\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}
うまくいきませんでした。何が問題なのか誰か分かりますか? ありがとうございます
答え1
したがって、あなたの例では、\numbers[\i]
それが何を指すのか完全にはわかりません。動作していないコード部分を削除し、あなたが探していたものを確認しようとしたところ、次のような結果が得られました。
\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}
出力は次のようになります。
これがあなたにとって役立つ出発点となることを願っています。この仕組みの一部について質問がある場合は、遠慮なくコメントしてください。
答え2
この質問に対する私の解決策をアップロードします。
\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}