
Me gustaría llenar este triángulo
El código es:
\documentclass[border=0.2cm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
% \draw [help lines] (7,0) grid (11,4);
\draw [fill=red] (0,1.3) circle (1.3);
\draw [fill=blue] plot [smooth cycle,scale=0.4, xshift=18cm, yshift=1.5cm] coordinates
{(1,0) (0,2) (1.3,4) (3.6,2) (3.6+3.6-1.3,4) (2*3.6,2) (3.6+3.6-1,0) (3.6,1)};
\draw (8.55,0.98) -- ++ (0.1,-1.47) (8.7,0.99) -- (8.55+0.1,-0.49);
\end{tikzpicture}
\end{document}
he mirado hacia arribaÁrea de relleno entre dos líneas y un arco.pero no pude encontrar una solución. Creo que primero debería darle el nombre al objeto azul mediante name path=candy
. Entonces, debería dar la orden.
\path[name path=twolines] (0.98) -- ++ (0.1,-1.47) (8.7,0.99) -- (8.55+0.1,-0.49);
para encontrar las intersecciones. Después de eso, con el comando fill
, debería poder llenar esa área. El problema es que no sé cómo. Quizás con la ayuda de \clip
, pero nuevamente, ¿cómo?
Respuesta1
Dos sencillos trucos pueden ahorrarte un montón de trabajo. Dibuja ese triángulo y rellénalo como de costumbre [fill=<color>]
antes de dibujar la forma de la polilla, luego mueve el triángulo hacia arriba un poco para ocultar ese pequeño espacio en blanco entre el arco y el lado del triángulo. Finalmente dibuja la forma curva. Es un poco aproximado pero te ahorrará muchos dolores de cabeza.
\documentclass[border=0.2cm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
% \draw [help lines] (7,0) grid (11,4);
\draw [fill=red] (0,1.3) circle (1.3);
\draw [fill=red,yshift=1pt] (8.55,0.98) -- ++(0.1,-1.47) -- (8.7,0.99);
\draw [fill=blue] plot [smooth cycle,scale=0.4, xshift=18cm, yshift=1.5cm] coordinates
{(1,0) (0,2) (1.3,4) (3.6,2) (3.6+3.6-1.3,4) (2*3.6,2) (3.6+3.6-1,0) (3.6,1)};
\end{tikzpicture}
\end{document}
Respuesta2
Simplemente puedes dibujar tu triángulo un poco demasiado grande en la parte superior; yo uso la shorten
opción con una longitud negativa. -y luego coloca tu arco encima para obtener un resultado perfecto como este:
\documentclass[border=0.2cm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [fill=red, shorten <=-0.1cm, shorten >=-0.1cm] (8.55,0.98) -- (8.65,-0.49) -- (8.7,0.99);
\draw [fill=blue] plot [smooth cycle,scale=0.4, xshift=18cm, yshift=1.5cm] coordinates
{(1,0) (0,2) (1.3,4) (3.6,2) (3.6+3.6-1.3,4) (2*3.6,2) (3.6+3.6-1,0) (3.6,1)};
\end{tikzpicture}
\end{document}
Si por alguna razón necesitas un triángulo relleno perfecto en primer plano, puedes usar el clip invertido de la respuesta de @Jake con el arco:https://tex.stackexchange.com/a/12033/8650