
Quiero dibujar símbolos CircuiTikZ simples sobre una imagen .png. Esto es lo que quiero:
Esto es lo que obtengo actualmente:
Aquí está mi código:
\begin{figure} [!ht]
\begin{tikzpicture}[x=1cm,y=1cm]
\node at (0,0) {\includegraphics[trim={40cm 55cm 40cm 55cm},clip,height=10cm]{images/MecanismoEscala_primer_ensayo_Variables.png}};
\node at (-3.7634,-1.5117){
\begin{circuitikz}
\draw
(0,0) --++ (-1.0778,0)
to [open,v=$v$,o-o] ++(0,0.7012)
to[short,i=$i_{a}$] ++(1.0663,0);
\end{circuitikz}
};
\end{tikzpicture}
\end{figure}\FloatBarrier
También me gustaría escribir $v$
además de los terminales junto con los signos +- (con estos dos signos un poco más separados entre sí, no como el resultado que obtengo).
Respuesta1
En primer lugar.Nuncanido tikzpictures! Y publique la imagen básica, que en este caso logré crear con GIMP y guardar como uffa.png
.
Mi enfoque sería:
- cargue la imagen como un nodo al comienzo de
tikzpicture
, para que luego pueda escribir encima de ella. - Establece algún tipo de cuadrícula para tener una referencia fácil.
- Dibuja lo que quieras, afina las coordenadas.
- Retire la rejilla.
Veamos: los pasos 1 y 2 serían algo como esto:
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\node[anchor=south west,inner sep=0] (image) at (0,0) {%
\includegraphics[width=10cm]{uffa.png}};
\draw[red,thin] (0,0) grid[step=1] (10,5);
\end{tikzpicture}
\end{document}
Tienes 0,0
el punto inferior izquierdo y cada paso de la cuadrícula es de 1 cm. Ahora, el fondo no es blanco (espero que no lo imprimas; de lo contrario, cámbialo), así que elegí el color que resultó ser un gris azulado bastante oscuro con RGB en 33,40,48 (cualquier selector de color hacer).
Ahora dibujo el circuito, configurando el gris azulado como relleno para los polos abiertos.
\documentclass[tikz]{standalone}
\usepackage[RPvoltages, american]{circuitikz}
\begin{document}
\begin{tikzpicture}[color=white]% write in white
\node[anchor=south west,inner sep=0] (image) at (0,0) {%
\includegraphics[width=10cm]{uffa.png}};
\draw[red,thin] (0,0) grid[step=1] (10,5);
\definecolor{mybg}{RGB}{33,40,48}% with a color picker
\ctikzset{open poles fill=mybg}% tell circuitikz what is background for you
\draw (4,4) coordinate(a) to[short, i=$i_a$, o-] ++(1.8,0);
\draw (a) ++(0,-1) to[short, o-] ++(1.7,0);
\draw (a) ++(-0.3,0) to[open, v=$v$] ++(0,-1);
\end{tikzpicture}
\end{document}
Intenté usar coordenadas relativas y con nombre siempre que fue posible, para minimizar la cantidad de números que necesitas modificar para obtener el resultado. Luego, quitas la cuadrícula y tendrás: