
Soy bastante nuevo en tikz, pero lo he estado estudiando extensamente últimamente y he recibido gran ayuda paraesta pregunta la hice aquí. He escrito el código a continuación
\begin{tikzpicture} [scale=2]
\coordinate (A) at (0,3);
\coordinate (B) at (0,0);
\coordinate (C) at (3,0);
\coordinate (D) at (3,3);
\coordinate (E) at (0,2);
\coordinate (F) at (3,2);
\draw[fill=teal] (E) .. controls (1.5,2.75) and (1.5,2.75) .. (F) --
(C)
--
(B)
-- (E);
\draw (A) -- (E);
\draw (D) -- (F);
\draw[color=blue] (E) .. controls (1.5,2.75) and (1.5,2.75) .. (F) ;
\end{tikzpicture}
lo que produce la figura de la izquierda, mientras que busco la de la derecha en lo que aparece a continuación
No me importan los colores, ni el largo y ancho del marco/caja exterior. Lo que sí me importa es la forma del arco/curva en la parte superior. En la figura de la izquierda, la curva parece estar curvada al principio y al final, mientras que en la figura de la derecha, la curva/arco superior es más plana cerca de los extremos izquierdo y derecho (he resaltado las áreas de preocupación especificadas en rojo). Intenté modificar mis puntos de control pero no pareció funcionar. ¿Se puede hacer esto con tikz usando puntos de control o necesito algo completamente diferente? Agradezco a todos los que me ayudan y agradecería cualquier ayuda en esto.
Respuesta1
Probablemente la forma más sencilla de ajustar curvas como esta es usar out=
y in=
en el to
comando:
\draw (E) to[out=0, in=180] (G)
hará que el ángulo saliente sea 0 (hacia el este) desde (E)
y el ángulo entrante 180 (desde el oeste) hacia (G)
. Así que coloque la coordenada (G)
donde desee, digamos en (1.5,2.5)
.
Puedes ajustar la looseness
forma del arco agregando looseness=.8
(o cualquier factor que te atraiga) a las \draw
opciones: \draw[fill=teal, looseness=.8]
.
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture} [scale=2]
\coordinate (A) at (0,3);
\coordinate (B) at (0,0);
\coordinate (C) at (3,0);
\coordinate (D) at (3,3);
\coordinate (E) at (0,2);
\coordinate (F) at (3,2);
\coordinate (G) at (1.5,2.5);
\draw[fill=teal] (E) to[out=0, in=180] (G) to[out=0, in=180] (F) -- (C) -- (B) -- cycle;
\draw (A) -- (E);
\draw (D) -- (F);
\end{tikzpicture}
\end{document}