Você pode ajudar a desenhar esta figura?
\documentclass[10pt]{standalone}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}
\begin{circuitikz}
%upper ring
\draw[fill=yellow](0,0) ellipse(2 cm and .7 cm);
\draw[fill=white](0,0) ellipse(1.67 cm and .5 cm);
\def\d{1.5}
\draw(2,0)--++(0,-\d) coordinate(X1);
\draw(-2,0)--++(0,-\d) coordinate(X2);
\draw (X1) arc(0:-180:2cm and .6cm);
%lower ring
\draw[fill=yellow](0,-4) ellipse(2 cm and .7 cm);
\draw[fill=white](0,-4) ellipse(1.67 cm and .5 cm);
\def\d{1.95}
\draw(2,-4)--++(0,-\d) coordinate(X1a);
\draw(-2,-4)--++(0,-\d) coordinate(X2a);
\draw (X1a) arc(0:-180:2cm and .6cm);
\foreach\y in{-4.1,-4.15, ..., -5.9} \draw(2,\y) arc(0:-180: 2cm and .6cm);
%the cylinder
\draw[fill=yellow](0,3) ellipse(1.3 cm and .5 cm);
\def\d{11}
\draw(1.3,3)--++(0,-\d) coordinate(X1);
\draw(-1.3,3)--++(0,-\d) coordinate(X2);
\draw (X1) arc(0:-180:1.3cm and .5cm);
%circuit
\draw(2,-4.5)--(2.7,-4.5)--++(0,1.5)--++(.5,0)--++(.8,.3);
\draw(2,-5.5)--(2.7,-5.5)--++(0,-1.5)--++(1,0);
\coordinate(K1)at(5,-3);
\coordinate(K0)at(5,-5);
\coordinate(K2)at(5,-7);
\draw(K1)to[battery] (K0);
\draw(K0)to[battery] (K2);
\draw(K1)--++(-.9,0);
\draw(K2)--++(-1.3,0);
%labels
\scriptsize
\draw(-2.3,2)node[left] {ferrous core}--++(1,-.2);
\draw(-2.6,0)node[left] {aluminium ring}--++(.7,-.2);
\draw(-2.6,-5)node[left] {coil of insulated wire}--++(.7,-.2);
\end{circuitikz}
\end{document}
Responder1
ATUALIZAÇÃO 2:
Versão monocromática também, mas mantendo os tons metálicos forçados.
RESULTADO U2:
U2 MWE:
\documentclass[border=3.14pt,tikz]{standalone}
\usepackage{circuitikz}
\usetikzlibrary{positioning}
\pgfdeclarelayer{background layer}
\pgfdeclarelayer{foreground layer}
\pgfsetlayers{background layer,main,foreground layer}
\begin{document}
\begin{tikzpicture}
\def\alt{0.55}
\def\Ring#1#2#3#4#5[#6]{%\Ring{position}{Radious}{widht}{height}{color}[ID]
\begin{scope}[shift={(#1)}]
\coordinate (#6--east) at (0:#2);
\coordinate (#6--west) at (180:#2);
\begin{pgfonlayer}{background layer}
\fill[fill=#5,even odd rule]
(0:#2)
arc (0:180:#2 and #2*\alt)
-- (180:#2-#3)
arc (180:0:#2-#3 and #2*\alt-#3*\alt);
\fill[draw,fill=#5]
(0:#2-#3)
arc (0:180:#2-#3 and #2*\alt-#3*\alt)
--++(0,-#4)
arc (180:0:#2-#3 and #2*\alt-#3*\alt)
-- cycle;
\draw[black](0:#2) arc (0:180:#2 and #2*\alt);
\draw[black](0:#2-#3) arc (0:180:#2-#3 and #2*\alt-#3*\alt);
\foreach \r in {45,135}{%forced radial shade
\foreach \i [evaluate={\s=20}] in {0,2,...,20}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt) -- (\r-\s+\i:#2-#3 and #2*\alt-#3*\alt)
arc (\r-\s+\i:\r+\s-\i:#2-#3 and #2*\alt-#3*\alt) -- cycle;
}
}
\end{pgfonlayer}
\begin{pgfonlayer}{foreground layer}
\fill[fill=#5,even odd rule]
(180-1:#2)
arc (180-1:360+1:#2 and #2*\alt)
-- (360+1:#2-#3)
arc (360+1:180-1:#2-#3 and #2*\alt-#3*\alt);
\fill[fill=#5]
(0:#2)
arc (360:180:#2 and #2*\alt)
--++(0,-#4)
arc (180:360:#2 and #2*\alt)
-- cycle;
\draw[black]
(0:#2)
--++(0,-#4)
arc (360:180:#2 and #2*\alt)
--++(0,#4);
\draw[black](180-1:#2) arc (180-1:360+1:#2 and #2*\alt);
\draw[black](180-1:#2-#3) arc (180-1:360+1:#2-#3 and #2*\alt-#3*\alt);
\foreach \r in {-45,-135}{%forced radial shade
\foreach \i [evaluate={\s=20}] in {0,2,...,20}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt) -- (\r-\s+\i:#2-#3 and #2*\alt-#3*\alt)
arc (\r-\s+\i:\r+\s-\i:#2-#3 and #2*\alt-#3*\alt) -- cycle;
}
}
\foreach \r in {-45,-90}{%forced radial side shade
\foreach \i [evaluate={\s=20}] in {0,2,...,20}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt)-- ++(0,-#4) arc (\r-\s+\i:\r+\s-\i:#2 and #2*\alt) -- cycle;
}
}
\end{pgfonlayer}
\end{scope}
}
\def\cilinder#1#2#3#4[#5]{%\cilinder{position}{Radious}{height}{color}[ID]
\begin{scope}[shift={(#1)}]
\coordinate (#5--east) at (0:#2);
\coordinate (#5--west) at (180:#2);
\fill[draw,fill=#4] (0:#2) arc (0:180:#2 and #2*\alt) -- ++ (0,-#3) arc (180:360:#2 and #2*\alt) -- cycle;
\draw[black](0:#2) arc (0:360:#2 and #2*\alt);
\foreach \r in {135,45,-45,-135}{%forced radial shade
\foreach \i [evaluate={\s=20}] in {0,2,...,20}{
\fill [black, fill opacity=1/50]
(0,0) -- (\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt)-- cycle;
}
}
\foreach \r in {-85,-135}{%forced radial side shade
\foreach \i [evaluate={\s=20}] in {0,2,...,20}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt)-- ++(0,-#3) arc (\r-\s+\i:\r+\s-\i:#2 and #2*\alt) -- cycle;
}
}
\end{scope}
}
%The metals
\cilinder{0,0}{1}{5}{white}[A]
\Ring{0,-1}{1.8}{0.5}{1}{white}[B]
\foreach \i in {1,...,18}{%Generate 18 named rings from CuRing-1 to CuRing-18
\Ring{0,-4.5+0.06*\i}{1.1}{0.1}{0mm}{white}[C\i]
}
%The circuit
\draw
(C14--east)%From te coordinate east of CuRing-14
-| ++(1,1)% Squared path first horizontal then vertical to x+1 and y+1 from previous coordinate (x,y)
to [nos] ++(2,0)%Normal Open Switch from previous coordinate (x',y') to (x'+2,y'+0)
to [battery] ++ (0,-1.4)
to [battery] ++ (0,-1.4)
-- ++ (-2,0)
|- (C2--east);
%labels
\scriptsize
\begin{pgfonlayer}{foreground layer}
\draw($(A--west)+(0.5,0)$) -- ++(-1,0.5)node[left] {ferrous core};
\draw($(B--west)+(0.25,0)$) -- ++(-1.2,0.5)node[left] {Aluminium ring};
\draw($(C18--west)+(0.07,0)$) -- ++(-1,0.5)node[left] {Coil of insulated wire};
\end{pgfonlayer}
\end{tikzpicture}
\end{document}
ATUALIZAR:
Esta é a opção apenas com preenchimentos brancos.
RESULTADO U:
U-MWE:
\documentclass[border=3.14pt,tikz]{standalone}
\usepackage{circuitikz}
\usetikzlibrary{positioning}
\pgfdeclarelayer{background layer}
\pgfdeclarelayer{foreground layer}
\pgfsetlayers{background layer,main,foreground layer}
\begin{document}
\begin{tikzpicture}
\def\alt{0.55}
\def\Ring#1#2#3#4#5[#6]{%\Ring{position}{Radious}{widht}{height}{color}[ID]
\begin{scope}[shift={(#1)}]
\coordinate (#6--east) at (0:#2);
\coordinate (#6--west) at (180:#2);
\begin{pgfonlayer}{background layer}
\fill[fill=#5,even odd rule]
(0:#2)
arc (0:180:#2 and #2*\alt)
-- (180:#2-#3)
arc (180:0:#2-#3 and #2*\alt-#3*\alt);
\fill[draw,fill=#5]
(0:#2-#3)
arc (0:180:#2-#3 and #2*\alt-#3*\alt)
--++(0,-#4)
arc (180:0:#2-#3 and #2*\alt-#3*\alt)
-- cycle;
\draw[black](0:#2) arc (0:180:#2 and #2*\alt);
\draw[black](0:#2-#3) arc (0:180:#2-#3 and #2*\alt-#3*\alt);
\end{pgfonlayer}
\begin{pgfonlayer}{foreground layer}
\fill[fill=#5,even odd rule]
(180-1:#2)
arc (180-1:360+1:#2 and #2*\alt)
-- (360+1:#2-#3)
arc (360+1:180-1:#2-#3 and #2*\alt-#3*\alt);
\fill[fill=#5]
(0:#2)
arc (360:180:#2 and #2*\alt)
--++(0,-#4)
arc (180:360:#2 and #2*\alt)
-- cycle;
\draw[black]
(0:#2)
--++(0,-#4)
arc (360:180:#2 and #2*\alt)
--++(0,#4);
\draw[black](180-1:#2) arc (180-1:360+1:#2 and #2*\alt);
\draw[black](180-1:#2-#3) arc (180-1:360+1:#2-#3 and #2*\alt-#3*\alt);
\end{pgfonlayer}
\end{scope}
}
\def\cilinder#1#2#3#4[#5]{%\cilinder{position}{Radious}{height}{color}[ID]
\begin{scope}[shift={(#1)}]
\coordinate (#5--east) at (0:#2);
\coordinate (#5--west) at (180:#2);
\fill[draw,fill=#4] (0:#2) arc (0:180:#2 and #2*\alt) -- ++ (0,-#3) arc (180:360:#2 and #2*\alt) -- cycle;
\draw[black](0:#2) arc (0:360:#2 and #2*\alt);
\end{scope}
}
%The metals
\cilinder{0,0}{1}{5}{white}[A]
\Ring{0,-1}{1.8}{0.5}{1}{white}[B]
\foreach \i in {1,...,18}{%Generate 18 named rings from CuRing-1 to CuRing-18
\Ring{0,-4.5+0.06*\i}{1.1}{0.1}{0mm}{white}[C\i]
}
%The circuit
\draw
(C14--east)%From te coordinate east of CuRing-14
-| ++(1,1)% Squared path first horizontal then vertical to x+1 and y+1 from previous coordinate (x,y)
to [nos] ++(2,0)%Normal Open Switch from previous coordinate (x',y') to (x'+2,y'+0)
to [battery] ++ (0,-1.4)
to [battery] ++ (0,-1.4)
-- ++ (-2,0)
|- (C2--east);
%labels
\scriptsize
\begin{pgfonlayer}{foreground layer}
\draw($(A--west)+(0.5,0)$) -- ++(-1,0.5)node[left] {ferrous core};
\draw($(B--west)+(0.25,0)$) -- ++(-1.2,0.5)node[left] {Aluminium ring};
\draw($(C18--west)+(0.07,0)$) -- ++(-1,0.5)node[left] {Coil of insulated wire};
\end{pgfonlayer}
\end{tikzpicture}
\end{document}
Bom, você praticamente desenhou tudo, o que falta resolver é como fazer com que seja exibido como objetos 3D, bom para isso é necessário trabalhar com 2 camadas adicionais, uma para objetos atrás e outra para objetos na frente, então já que é sobre metais adicionei todos os tipos de tonalidades disponíveis que tenho, para não ter que repetir tudo, agrupei em 2 objetos de desenho, que são o anel e o cilindro, depois de algumas tentativas e erros consertei-os para que você possa desenhar eles em uma posição específica com um determinado raio, largura, comprimento, cor e nome, dessa forma posso aplicar as sombras a todos os objetos sem ter que digitar tudo novamente, e como o anel está nas camadas frontal e posterior, e o cilindro na camada padrão, dão a impressão de que o cilindro passa pelo meio do anel, existe uma variável \alt
, com a qual você pode modificar a altura da vista 3D aparente.
RESULTADO:
MWE: (nota: a compilação pode demorar alguns segundos a mais do que o normal, isso se deve à iteração das sombras forçadas muitas vezes)
\documentclass[border=3.14pt,tikz]{standalone}
\usepackage{circuitikz}
\usetikzlibrary{positioning}
\pgfdeclarelayer{background layer}
\pgfdeclarelayer{foreground layer}
\pgfsetlayers{background layer,main,foreground layer}
\definecolor{cooper}{HTML}{CC9671}
\definecolor{aluminium}{HTML}{F1F1F2}
\definecolor{iron}{HTML}{646464}
\begin{document}
\begin{tikzpicture}
\def\alt{0.55}
\def\Ring#1#2#3#4#5[#6]{%\Ring{position}{Radious}{widht}{height}{color}[ID]
\begin{scope}[shift={(#1)}]
\coordinate (#6--east) at (0:#2);
\coordinate (#6--west) at (180:#2);
\begin{pgfonlayer}{background layer}
\shade[left color=#5,even odd rule](0:#2) arc (0:180:#2 and #2*\alt) -- (180:#2-#3) arc (180:0:#2-#3 and #2*\alt-#3*\alt);
\shade[draw,right color=black,left color=#5]
(0:#2-#3)
arc (0:180:#2-#3 and #2*\alt-#3*\alt)
--++(0,-#4)
arc (180:0:#2-#3 and #2*\alt-#3*\alt)
-- cycle;
\draw[black](0:#2) arc (0:180:#2 and #2*\alt);
\draw[black](0:#2-#3) arc (0:180:#2-#3 and #2*\alt-#3*\alt);
\foreach \r in {45,135}{%forced radial shade
\foreach \i [evaluate={\s=30}] in {0,2,...,30}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt) -- (\r-\s+\i:#2-#3 and #2*\alt-#3*\alt)
arc (\r-\s+\i:\r+\s-\i:#2-#3 and #2*\alt-#3*\alt) -- cycle;
}
}
\end{pgfonlayer}
\begin{pgfonlayer}{foreground layer}
\shade[left color=#5,even odd rule]
(180-1:#2)
arc (180-1:360+1:#2 and #2*\alt)
-- (360+1:#2-#3)
arc (360+1:180-1:#2-#3 and #2*\alt-#3*\alt);
\shade[draw,left color=black!60!#5,middle color=#5,right color=#5!50!white]
(0:#2)
arc (360:180:#2 and #2*\alt)
--++(0,-#4)
arc (180:360:#2 and #2*\alt)
-- cycle;
\draw[black](180-1:#2) arc (180-1:360+1:#2 and #2*\alt);
\draw[black](180-1:#2-#3) arc (180-1:360+1:#2-#3 and #2*\alt-#3*\alt);
\foreach \r in {-45,-135}{%forced radial shade
\foreach \i [evaluate={\s=30}] in {0,2,...,30}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt) -- (\r-\s+\i:#2-#3 and #2*\alt-#3*\alt)
arc (\r-\s+\i:\r+\s-\i:#2-#3 and #2*\alt-#3*\alt) -- cycle;
}
}
\foreach \r in {-45,-90}{%forced radial side shade
\foreach \i [evaluate={\s=30}] in {0,2,...,30}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt)-- ++(0,-#4) arc (\r-\s+\i:\r+\s-\i:#2 and #2*\alt) -- cycle;
}
}
\end{pgfonlayer}
\end{scope}
}
\def\cilinder#1#2#3#4[#5]{%\cilinder{position}{Radious}{height}{color}[ID]
\begin{scope}[shift={(#1)}]
\coordinate (#5--east) at (0:#2);
\coordinate (#5--west) at (180:#2);
\shade[draw,left color=black!60!#4,middle color=#4,right color=#4!50!white] (0:#2) arc (0:180:#2 and #2*\alt) -- ++ (0,-#3) arc (180:360:#2 and #2*\alt) -- cycle;
\shade[draw,left color=#4](0:#2) arc (0:360:#2 and #2*\alt);
\foreach \r in {135,45,-45,-135}{%forced radial shade
\foreach \i [evaluate={\s=30}] in {0,2,...,30}{
\fill [black, fill opacity=1/50]
(0,0) -- (\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt)-- cycle;
}
}
\foreach \r in {-85,-135}{%forced radial side shade
\foreach \i [evaluate={\s=30}] in {0,2,...,30}{
\fill [black, fill opacity=1/50]
(\r+\s-\i:#2 and #2*\alt)
arc (\r+\s-\i:\r-\s+\i:#2 and #2*\alt)-- ++(0,-#3) arc (\r-\s+\i:\r+\s-\i:#2 and #2*\alt) -- cycle;
}
}
\end{scope}
}
%The metals
\cilinder{0,0}{1}{5}{iron}[FeCore-1]
\Ring{0,-1}{1.8}{0.5}{1}{aluminium}[AlRing-1]
\foreach \i in {1,...,18}{%Generate 18 named rings from CuRing-1 to CuRing-18
\Ring{0,-4.5+0.06*\i}{1.1}{0.1}{0mm}{cooper}[CuRing-\i]
}
%The circuit
\draw
(CuRing-14--east)%From te coordinate east of CuRing-14
-| ++(1,1)% Squared path first horizontal then vertical to x+1 and y+1 from previous coordinate (x,y)
to [nos] ++(2,0)%Normal Open Switch from previous coordinate (x',y') to (x'+2,y'+0)
to [battery] ++ (0,-1.4)
to [battery] ++ (0,-1.4)
-- ++ (-2,0)
|- (CuRing-2--east);
%labels
\scriptsize
\begin{pgfonlayer}{foreground layer}
\draw($(FeCore-1--west)+(0.5,0)$) -- ++(-1,0.5)node[left] {ferrous core};
\draw($(AlRing-1--west)+(0.25,0)$) -- ++(-1.2,0.5)node[left] {Aluminium ring};
\draw($(CuRing-18--west)+(0.07,0)$) -- ++(-1,0.5)node[left] {Coil of insulated wire};
\end{pgfonlayer}
\end{tikzpicture}
\end{document}