어떻게든풀자 [1380588] · MS 2025 (수정됨) · 쪽지

2025-03-05 19:43:18
조회수 146

LaTeX + Tikz 조합으로 그림 자료 생성

게시글 주소: https://orbi.kr/00072336158

(438.1K) [6]

LaTeX+Tikz-2022 수능수학-미적분29번.pdf

문제에서 주어진 도형에 추가적인 설명이 필요할 때, 그림을 어떻게 그리나요?
제가 많이 사용하는 LaTeX + Tikz를 소개합니다.
익숙해지면, 쉽게 그릴 수 있습니다.
무엇보다 장점은 좌표를 도입하여 그리기 때문에, 수정하여 새로운 그림을 만들기 편합니다.
(아래쪽 코드 참조)

요즘은 그림을 chatgpt에서 던져주고 LaTeX Tikz로 그려달라고 하면 코드를 생성해주기도 합니다.
어떤 경우에는 거의 비슷한 그림을 그려주기도 하고, 어떤 경우는 많이 다른 그림을 그려주기도 합니다.
생성된 코드를 좀 이해할 수 있으면, chatgpt가 만들어 주는 코드를 수정해서 사용하는 것이 더 효율적입니다.



다음은 마지막 그림을 그린 코드입니다.

\begin{tikzpicture}

% Define points

\tkzDefPoints{0/0/A, 8/0/B} % Segment AB

\tkzDefMidPoint(A,B) \tkzGetPoint{O} % Midpoint O of AB

\tkzDefPoint(4.51,1.2086){U}

\tkzDefPoint(5.906,1.2086){T}

\tkzDefPoint(5.208,0){S}

\tkzDefPoint(4.51,0){U'}

\tkzDefPoint(5.906,0){T'}


% Draw semicircle

\tkzDrawArc(O,B)(A)


% Define key triangle points

\tkzDefPointBy[rotation=center O angle 30](B) \tkzGetPoint{P}

\tkzDefPointBy[rotation=center O angle 120](B) \tkzGetPoint{Q}

\tkzInterLL(A,P)(B,Q) \tkzGetPoint{R}


\tkzDefLine[perpendicular=through R,K=-0.5](A,B) \tkzGetPoint{r}

\tkzInterLL(A,B)(R,r)  \tkzGetPoint{R'} 


\tkzFillPolygon[white](A,Q,O)



% Fill shaded areas

\begin{scope}

        \fill[gray!30] (A) -- (Q) -- (R) -- cycle;

        \fill[gray!50] (S) -- (T) -- (U) -- cycle;

\end{scope}


\tkzDrawPolygons(U,T,S)


% Draw main triangle and segments

\tkzDrawSegments(A,B A,Q A,P B,Q R,R')


% Angles

\tkzMarkRightAngles[size=0.2](A,Q,B R,R',B)

\tkzMarkAngles[size=0.8](B,A,P Q,B,A Q,R,A)

\tkzLabelAngle[pos=1](B,A,P){$\theta$}

\tkzLabelAngle[pos=1](Q,B,A){$2\theta$}

\tkzLabelAngle[pos=1](Q,R,A){$3\theta$}



\tkzDrawPoints(P,Q,U,R,T,O,S,R')

\tkzLabelPoints[below](O,A,B,R')

\tkzLabelPoints[above right](P)

%\tkzLabelPoints[above left](U)

\tkzLabelPoints[above](Q,R)


%\node at (5.2,0.6) {\small $g(\theta)$};

\draw[dashed,very thin] (A) to[bend left=20] node[above,midway]{$\frac43$} (R);

\draw[dashed,very thin] (Q) to[bend left=20] node[above,midway]{$\frac43$} (R);

\draw[dashed,very thin] (R) to[bend left=20] node[above,midway]{$\frac23$} (B);

\draw[dashed,very thin] (R') to[bend right=20] node[right,midway]{$\frac43\theta$} (R);

\end{tikzpicture}


\begin{eqnarray*}






0 XDK (+0)

  1. 유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.