
É raro eu encontrar uma solução para um problema no ChatGPT e no Google e não encontrar absolutamente nada que mencione o problema, mesmo que remotamente. Talvez eu seja péssimo em pesquisar.
No código a seguir, tenho quatro minipáginas exibindo diferentes tipos de triângulos. Usando comandos tkx-euclide nos triângulos isósceles e equiláteros (mas não escaleno). É centralizar ambos os diagramas e deslocá-los verticalmente. Não os quero centralizados, nem quero que sejam deslocados verticalmente. Então preciso de uma solução para o problema. Acho que os comandos \tkzLabelAngle estão causando o problema, mas preciso de uma maneira de usar esse comando sem problemas de posicionamento.
Obrigado
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Scalene Triangle}}
\newline\newline
\begin{tikzpicture}
\draw (0,0) -- (1,2) -- (3,1.75) -- (0,0);
\end{tikzpicture}
\end{minipage}
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Isosceles Triangle}}
\newline\newline
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (4,0);
\coordinate (C) at (2,1.5);
\draw (0,0) -- (4,0) -- (2,1.5) -- (0,0);
\tkzMarkSegment[color=black,pos=.5,mark=|](A,C)
\tkzMarkSegment[color=black,pos=.5,mark=|](B,C)
\tkzLabelAngle[pos=-0.33](C,A,B){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\end{tikzpicture}
\end{minipage}
\newline\newline
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Equilateral Triangle}}
\newline\newline
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (1.5,{1.5*sqrt(3)});
\draw (A) -- (B) -- (C) -- cycle;
\tkzLabelAngle[pos=-0.33](C,A,B){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\tkzLabelAngle[pos=-0.33](B,C,A){$\circ$}
\end{tikzpicture}
\end{minipage}
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Right Triangle}}
\newline\newline
\begin{tikzpicture}
\end{tikzpicture}
\end{minipage}
Responder1
Melhor desenhá-los todos em uma única imagem tikz com valores diferentes scope
e localizá-los com shift
valores diferentes. Acredito que o pos
valor da chave nagtiva pode causar uma caixa delimitadora maior. É melhor usar um valor positivo, se possível.
\documentclass{standalone}
\usepackage{tkz-euclide}
\begin{document}
\begin{tikzpicture}
\begin{scope}
\draw (0,0) -- (1,2) -- (3,1.75) -- cycle;
\node at (1.5,2) [above=0.5cm] {\textsf{\textbf{Scalene Triangle}}};
\end{scope}
\begin{scope}[xshift=6cm]
\coordinate (A) at (0,0);
\coordinate (B) at (4,0);
\coordinate (C) at (2,1.5);
\draw (0,0) -- (4,0) -- (2,1.5) -- cycle;
\tkzMarkSegment[color=black,pos=.5,mark=|](A,C)
\tkzMarkSegment[color=black,pos=.5,mark=|](B,C)
\tkzLabelAngle[pos=-0.33](C,A,B){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\node at (C) [above=1cm] {\textsf{\textbf{Isosceles Triangle}}};
\end{scope}
\begin{scope}[yshift=-4cm]
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (1.5,{1.5*sqrt(3)});
\draw (A) -- (B) -- (C) -- cycle;
\tkzLabelAngle[pos=0.33](B,A,C){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\tkzLabelAngle[pos=0.33](A,C,B){$\circ$}
\node at (C) [above=0.5cm] {\textsf{\textbf{Equilateral Triangle}}};
\end{scope}
\begin{scope}[shift={(6.5cm,-4cm)}]
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (3,{1.5*sqrt(3)});
\draw (A) -- (B) -- (C) -- cycle;
\node at (1.5,{1.5*sqrt(3)}) [above=0.5cm] {\textsf{\textbf{Right Triangle}}};
\end{scope}
\end{tikzpicture}
\end{document}
################################################# ###########################
Aqui está um exemplo que mostra que o
pos
valor negativo aumenta a caixa delimitadora. O mesmo desenho, mas opos
valor nativo, faz com que o canto inferior esquerdo e o ângulo superior tenham uma caixa delimitadora maior.
\documentclass{report}
\usepackage{tkz-euclide}
\begin{document}
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (1.5,{1.5*sqrt(3)});
\draw (A) -- (B) -- (C) -- cycle;
\tkzLabelAngle[pos=0.33](B,A,C){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\tkzLabelAngle[pos=0.33](A,C,B){$\circ$}
\draw (current bounding box.south west) rectangle (current bounding box.north east);
\end{tikzpicture}
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (1.5,{1.5*sqrt(3)});
\draw (A) -- (B) -- (C) -- cycle;
\tkzLabelAngle[pos=-0.33](C,A,B){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\tkzLabelAngle[pos=-0.33](B,C,A){$\circ$}
\draw (current bounding box.south west) rectangle (current bounding box.north east);
\end{tikzpicture}
\end{document}
Use
minipage
com valor positivopos
e\noindent
para a primeira linha. A saída correspondeu ao que você esperava? Eu usoreport
a classe document como exemplo e mostro o quadro da página.
\documentclass{report}
\usepackage{showframe}
\usepackage{tkz-euclide}
\begin{document}
\noindent\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Scalene Triangle}}
\newline\newline
\begin{tikzpicture}
\draw (0,0) -- (1,2) -- (3,1.75) -- (0,0);
\end{tikzpicture}
\end{minipage}
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Isosceles Triangle}}
\newline\newline
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (4,0);
\coordinate (C) at (2,1.5);
\draw (0,0) -- (4,0) -- (2,1.5) -- (0,0);
\tkzMarkSegment[color=black,pos=.5,mark=|](A,C)
\tkzMarkSegment[color=black,pos=.5,mark=|](B,C)
\tkzLabelAngle[pos=0.33](B,A,C){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\end{tikzpicture}
\end{minipage}
\newline\newline
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Equilateral Triangle}}
\newline\newline
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (1.5,{1.5*sqrt(3)});
\draw (A) -- (B) -- (C) -- cycle;
\tkzLabelAngle[pos=0.33](B,A,C){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\tkzLabelAngle[pos=0.33](A,C,B){$\circ$}
\end{tikzpicture}
\end{minipage}
\begin{minipage}[t]{0.475\linewidth}
\textsf{\textbf{Right Triangle}}
\newline\newline
\begin{tikzpicture}
\end{tikzpicture}
\end{minipage}
\end{document}
Responder2
- Primeira solução. Você não trabalha especificamente com tkz-euclide. Você mistura com TikZ e não é bom.
Você não usa valores negativos porque, pos
como diz Tom: você está aumentando a caixa delimitadora.
Com o clipe você pode controlar o bbox (ver 2)
\begin{tikzpicture}
\tkzDefPoints{0/0/A,3/0/B}
\tkzDefTriangle[equilateral](A,B)\tkzGetPoint{C}
\tkzDrawPolygon(A,B,C)
\tkzLabelAngle[pos=0.33](B,A,C){$\circ$}
\tkzLabelAngle[pos=0.33](C,B,A){$\circ$}
\tkzLabelAngle[pos=0.33](A,C,B){$\circ$}
\end{tikzpicture}
Você pode controlar o bbox com
\tkzClipPolygon(A,B,C)
\begin{tikzpicture} \coordinate (A) at (0,0); \coordinate (B) at (3,0); \coordinate (C) at (1.5,{1.5*sqrt(3)}); \draw (A) -- (B) -- (C) -- cycle; \tkzClipPolygon(A,B,C) \tkzLabelAngle[pos=-0.33](C,A,B){$\circ$} \tkzLabelAngle[pos=0.33](C,B,A){$\circ$} \tkzLabelAngle[pos=-0.33](B,C,A){$\circ$} \end{tikzpicture}