Beamer에서 겹치는 동심 다각형

Beamer에서 겹치는 동심 다각형

Beamer정다각형으로 원의 면적을 대략적으로 계산하기 위한 애니메이션을 만들고 싶습니다 . 그러기 위해서는 동심원 다각형을 겹쳐야 합니다. 애니메이션은 겹치는 부분이 됩니다. 다음 코드로 시도 중입니다.

\documentclass[aspectratio=169,10pt, notheorems]{beamer}
\usepackage{tikz}
\usepackage{pgf}
\usepackage{xcolor}
\usetikzlibrary{shapes.geometric}
\begin{document}
    \begin{frame}
        \begin{figure}
            \begin{tikzpicture}[scale=2]                
                \node [draw, minimum size=3cm, circle] at (0,0) {};
                \foreach \n in {3,...,10}
                \only<+>
                {
                    \node [fill, brown, minimum size=3cm, regular polygon, regular polygon sides=\n] at (0,0) {};
                }
            \end{tikzpicture}
        \end{figure}
    \end{frame} 
\end{document}

컴파일 시 오류가 발생합니다. 부품 File ended while scanning use of \pgffor@next.을 제거하면 \only<+>코드가 정상적으로 실행됩니다. 이 경우 애니메이션을 어떻게 얻나요?

추신.:또한 중심을 각 다각형의 꼭지점과 결합하여 전체 다각형을 삼각형으로 나누고 싶습니다. 어떻게 이를 달성할 수 있나요? 미리 감사드립니다.

답변1

노력하다:

\documentclass[aspectratio=169, notheorems]{beamer}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}

\begin{document}
\begin{frame}
    \begin{figure}
        \begin{tikzpicture}[scale=2]
            \node [draw, minimum size=3cm, circle] {};
            \foreach \n in {3,...,10}
            { % <-- added
            \only<+>
            {
                \node [fill=brown, minimum size=3cm, 
                       regular polygon, regular polygon sides=\n] {};
            }
            }% <-- added
        \end{tikzpicture}
    \end{figure}
\end{frame}
\end{document}

명령은 only<+>노드 그림과 함께 그룹에 속해야 했습니다. 즉, 코드에서 중괄호 쌍(그룹 정의)이 누락되었습니다. 위 MWE의 설명을 참조하세요.

편집하다: 두 번째 질문의 경우: 다각형 중심과 모서리 사이에 선을 그리는 새 루프를 추가해야 합니다. 이 루프를 포함하는 완전한 MWE는 다음과 같습니다.

\documentclass[aspectratio=169, notheorems]{beamer}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}

\begin{document}
\begin{frame}
    \begin{figure}
        \begin{tikzpicture}[scale=2]
            \node [draw, minimum size=3cm, circle] {};
            \foreach \n in {3,...,10}
            {
            \uncover<+> % or \only
            {
                \node (n\n) [fill=brown, minimum size=3cm,
                             regular polygon, regular polygon sides=\n] {};
                \foreach \i in {1,...,\n}      % <--- added
                \draw (0,0) -- (n\n.corner \i);% <--- added
            }
            }
        \end{tikzpicture}
    \end{figure}
\end{frame}
\end{document}

마지막 다각형 결과는 다음과 같습니다.

여기에 이미지 설명을 입력하세요

관련 정보