Mi código no logra alinear el dibujo de modo que la línea SR (centro del extracto del gráfico) esté en el medio de la página. Se nota que el dibujo está desplazado hacia la izquierda en comparación con el texto de arriba y el título y la paginación debajo del dibujo.
\documentclass[12pt, a4paper, oneside]{article}
\usepackage{indentfirst}
\usepackage[margin = 2.5cm]{geometry}
\usepackage{tkz-euclide}
\usepackage{amsmath}
\usepackage{amssymb}
\usetkzobj{all}
\begin{document}
...some text here...
\begin{align*}
\sec{\varphi}=\frac{|OS|}{|OR|}=\frac{|OS|}{1}=|OS|
& & \cot{\varphi}=\frac{|OU|}{|OT|}=\frac{|OU|}{1}=|OU|
\end{align*}
{\centering
\begin{tikzpicture}[scale=4]
\def\costhirty{0.8660256}
\def\secthirty{1.1547}
\def\sinfifteen{-0.258819}
\def\cosfifteen{0.9659258}
\draw[color=gray,dotted,step=1cm] (-0.25,-0.25) grid (2.25,1.25);
\draw (\cosfifteen,\sinfifteen) arc (-15:105:1cm);
\draw[color=gray,dotted] (0,0) -- (30:2.5cm);
\draw[color=gray,dotted] (30:1cm) -- +(-90:0.75cm);
\draw[color=gray,dotted] (30:1cm) -- +(90:0.75cm);
\coordinate (O) at (0, 0);
\coordinate (P) at (\costhirty, 0);
\coordinate (Q) at (30:1cm);
\coordinate (R) at (1, 0);
\coordinate (S) at (30:\secthirty);
\coordinate (T) at (0, 1);
\coordinate (U) at (30:2);
\draw[thick] (O)--(90:1.25);
\draw[thick] (O)--(0:2.25);
\draw[thick] (Q)--(P);
\draw[thick] (O)--(U)--(T);
\draw[thick] (R)--(S);
\tkzLabelPoints[below left](O)
\tkzLabelPoints[below left](P)
\tkzLabelPoints[left = 5pt of Q](Q)
\tkzLabelPoints[below right](R)
\tkzLabelPoints[below right](S)
\tkzLabelPoints[above left](T)
\tkzLabelPoints[above](U)
\tkzMarkAngle[fill = gray, size=0.3cm, opacity = .3](P,O,Q)
\tkzLabelAngle[pos = 0.2](P,O,Q){$\varphi$}
\tkzMarkAngle[fill = gray, size=0.3cm, opacity = .3](T,U,O)
\tkzLabelAngle[pos = -0.2](O,U,T){$\varphi$}
\end{tikzpicture}
\textit{\scriptsize{Figure 2}}
}
\end{document}
El código anterior da como resultado la siguiente vista previa. (La doble línea roja se agregó posteriormente).
¿Cómo puedo tener la línea SR centrada para que quede alineada con el resto del contenido que pasa por la doble línea roja?
Respuesta1
No sé exactamente por qué, pero las tkz-euclide
macros de marcado de ángulos deben usar algunos puntos de control internos que van fuera del cuadro delimitador del gráfico.
La solución es encerrarlos dentro de un pgfinterruptboundingbox
entorno:
\documentclass[12pt, a4paper, oneside]{article}
\usepackage{indentfirst}
\usepackage[margin = 2.5cm]{geometry}
\usepackage{tkz-euclide}
\usepackage{amsmath}
\usepackage{amssymb}
\usetkzobj{all}
\begin{document}
...some text here...
\begin{align*}
\sec{\varphi}=\frac{|OS|}{|OR|}=\frac{|OS|}{1}=|OS|
& & \cot{\varphi}=\frac{|OU|}{|OT|}=\frac{|OU|}{1}=|OU|
\end{align*}
{\centering
\begin{tikzpicture}[scale=4]
\def\costhirty{0.8660256}
\def\secthirty{1.1547}
\def\sinfifteen{-0.258819}
\def\cosfifteen{0.9659258}
\draw[color=gray,dotted,step=1cm] (-0.25,-0.25) grid (2.25,1.25);
\draw (\cosfifteen,\sinfifteen) arc (-15:105:1cm);
\draw[color=gray,dotted] (0,0) -- (30:2.5cm);
\draw[color=gray,dotted] (30:1cm) -- +(-90:0.75cm);
\draw[color=gray,dotted] (30:1cm) -- +(90:0.75cm);
\coordinate (O) at (0, 0);
\coordinate (P) at (\costhirty, 0);
\coordinate (Q) at (30:1cm);
\coordinate (R) at (1, 0);
\coordinate (S) at (30:\secthirty);
\coordinate (T) at (0, 1);
\coordinate (U) at (30:2);
\draw[thick] (O)--(90:1.25);
\draw[thick] (O)--(0:2.25);
\draw[thick] (Q)--(P);
\draw[thick] (O)--(U)--(T);
\draw[thick] (R)--(S);
\tkzLabelPoints[below left](O)
\tkzLabelPoints[below left](P)
\tkzLabelPoints[left = 5pt of Q](Q)
\tkzLabelPoints[below right](R)
\tkzLabelPoints[below right](S)
\tkzLabelPoints[above left](T)
\tkzLabelPoints[above](U)
\begin{pgfinterruptboundingbox}
\tkzMarkAngle[fill = gray, size=0.3cm, opacity = .3](P,O,Q)
\tkzLabelAngle[pos = 0.2](P,O,Q){$\varphi$}
\tkzMarkAngle[fill = gray, size=0.3cm, opacity = .3](T,U,O)
\tkzLabelAngle[pos = -0.2](O,U,T){$\varphi$}
\end{pgfinterruptboundingbox}
\end{tikzpicture}
\textit{\scriptsize{Figure 2}}
}
\end{document}
Minimizar un poco el ejemplo muestra el problema más claramente con alguna "instrumentación" para realizar pruebas:
\documentclass{article}
\usepackage{tkz-euclide}
\usepackage{amsmath}
\usetkzobj{all}
\begin{document}
...some text here... \hrulefill
\begin{align*}
\sec{\varphi}=\frac{|OS|}{|OR|}=\frac{|OS|}{1}=|OS|
& & \cot{\varphi}=\frac{|OU|}{|OT|}=\frac{|OU|}{1}=|OU|
\end{align*}
{\centering
\begin{tikzpicture}[scale=4]
\coordinate (O) at (0, 0);
\coordinate (P) at ({cos(30)}, 0);
\coordinate (Q) at (30:1cm);
\coordinate (R) at (1, 0);
\coordinate (S) at (30:{sec(30)});
\coordinate (T) at (0, 1);
\coordinate (U) at (30:2);
\draw[thick] (Q)--(P);
\draw[thick] (O)--(U)--(T);
\draw[thick] (R)--(S);
\node[red] at (current bounding box.south) {$\vert$};
\begin{pgfinterruptboundingbox}
\tkzMarkAngle[fill = gray, size=0.3cm, opacity = .3](P,O,Q)
\tkzLabelAngle[pos = 0.2](P,O,Q){$\varphi$}
\tkzMarkAngle[fill = gray, size=0.3cm, opacity = .3](T,U,O)
\tkzLabelAngle[pos = -0.2](O,U,T){$\varphi$}
\end{pgfinterruptboundingbox}
\node[blue] at (current bounding box.south) {$\vert$};
\end{tikzpicture}
$\vert$
}
\end{document}
Observe cómo, con el pgfinterruptboundingbox
medio ambiente, las tres \vert
están alineadas. Al comentar este entorno se mostrará la desalineación introducida en el cuadro delimitador por las macros de marcado de ángulos.