20

I am trying to create a spinner as shown in the figure below. I have drawn the disk but I am confused how should I draw the rod of the spinner.

Picture of a Spinner

My Code:

\documentclass[a4paper]{article}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{graphicx}
\usetikzlibrary{intersections,arrows.meta,angles}
\usetikzlibrary{shapes.geometric}

\begin{document}
\begin{tikzpicture}
%\draw[step=1cm,gray,very thin] (-6,-6) grid (6,6);
%\foreach \x in {-4,-3,...,4}
   % \draw (\x cm,1pt) -- (\x cm,-1pt) node[anchor=north] {$\x$};
%\foreach \y in {-4,-3,...,4}
   % \draw (1pt,\y cm) -- (-1pt,\y cm) node[anchor=east] {$\y$};

\node[below] at (0,-0.1){O};  
\draw[name path=ellipse 1] (3.5,0) arc (0:360:3.5cm and 2cm);
\draw[name path=ellipse 2,rotate=50] (3.5,0) arc (0:360:3.5cm and 2cm);
\path [name intersections={of=ellipse 1 and ellipse 2}];
\coordinate [] (A) at (intersection-4);

\draw[very thick,-{latex}](0,0)--(0,3.5);
\draw[](0,3.5)--(0,4)node[above]{Z};
\node[]() at (85:3.5){$\dot{\phi}$};
\draw[shorten >=-1cm,very thick,-{latex}](0,0)--(A);
\node[](x1) at (-65:3.5){$x$};

\draw[](0,0)--(-25:4.5)node[right]{Y};
\draw[dashed](0,0)--(-10:4.5)node[right](x2){$x^{'}$};
\draw[dashed](0,0)--(65:4.5)node[above]{$y^{'}$};
\draw[-latex](0,0)--(55:4.5)node[above]{$y$};
\draw[-latex](0,0)--(225:4.5)node[below left]{X};
\draw[-latex](0,0)--(135:4.5)node[above]{$z$};
\node[] at (135:5){$\dot{\psi}$};

%Arcs
% x to x'
%\coordinate (x1) at (-65:2);
\coordinate (O) at (0,0);
%\coordinate (x2) at (-10:2);
\draw    pic [-latex,draw,angle radius=0.7cm] {angle = x1--O--x2};    
\node[] at (0.8,-0.7){$\psi$};

% y to y'
\coordinate (y1) at (55:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (65:2);
\draw    pic [-latex,draw,angle radius=1.75cm] {angle = y1--O--y2};    

% Z to z
\coordinate (y1) at (90:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (135:2);
\draw    pic [-latex,draw,angle radius=3.0cm] {angle = y1--O--y2};    
\node[] at (-1.5,3){$\theta$};

% X to x
\coordinate (y1) at (225:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (-65:2);
\draw    pic [-latex,draw,angle radius=0.7cm] {angle = y1--O--y2};    
\node[] at (0,-1){$\phi$};

\draw[<-,rotate=-35] (0.15,3.8) arc (-60:250:3.4mm and 1.25mm);
\node[]at (50:4.25){$w_{y}$};

\draw[<-,rotate=45] (0.15,4) arc (60:-250:3.4mm and 1.25mm);
\node[]at (130:4.2){$w_{z}$};

\draw[thick,rotate around={-5:(-1,1)}] (-0.9,0.9) circle[x={(1cm,0.8cm)},y={(0cm,1cm)},x radius=0.5,y radius=0.5];

\draw[fill=white,thick,rotate around={-5:(-1,1)}] (-1,1) circle[x={(1cm,0.8cm)},y={(0cm,1cm)},x radius=0.5,y radius=0.5];

\end{tikzpicture}
\label{Plattice}
\end{document}

enter image description here

10

This would have been a lot easier using tikz3d.

\documentclass[a4paper]{article}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{graphicx}
\usetikzlibrary{intersections,arrows.meta,angles}
\usetikzlibrary{shapes.geometric}
\usetikzlibrary{calc}

\begin{document}
\begin{tikzpicture}
%\draw[step=1cm,gray,very thin] (-6,-6) grid (6,6);
%\foreach \x in {-4,-3,...,4}
   % \draw (\x cm,1pt) -- (\x cm,-1pt) node[anchor=north] {$\x$};
%\foreach \y in {-4,-3,...,4}
   % \draw (1pt,\y cm) -- (-1pt,\y cm) node[anchor=east] {$\y$};

\node[below] at (0,-0.1){O};  
\draw[name path=ellipse 1] (3.5,0) arc (0:360:3.5cm and 2cm);
\draw[name path=ellipse 2,rotate=50] (3.5,0) arc (0:360:3.5cm and 2cm);
\path [name intersections={of=ellipse 1 and ellipse 2}];
\coordinate [] (A) at (intersection-4);

\draw[very thick,-{latex}](0,0)--(0,3.5);
\draw[](0,3.5)--(0,4)node[above]{Z};
\node[]() at (85:3.5){$\dot{\phi}$};
\draw[shorten >=-1cm,very thick,-{latex}](0,0)--(A);
\node[](x1) at (-65:3.5){$x$};

\draw[](0,0)--(-25:4.5)node[right]{Y};
\draw[dashed](0,0)--(-10:4.5)node[right](x2){$x^{'}$};
\draw[dashed](0,0)--(65:4.5)node[above]{$y^{'}$};
\draw[-latex](0,0)--(55:4.5)node[above]{$y$};
\draw[-latex](0,0)--(225:4.5)node[below left]{X};
\draw[-latex](0,0)--(135:4.5)node[above]{$z$};
\node[] at (135:5){$\dot{\psi}$};

%Arcs
% x to x'
%\coordinate (x1) at (-65:2);
\coordinate (O) at (0,0);
%\coordinate (x2) at (-10:2);
\draw    pic [-latex,draw,angle radius=0.7cm] {angle = x1--O--x2};    
\node[] at (0.8,-0.7){$\psi$};

% y to y'
\coordinate (y1) at (55:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (65:2);
\draw    pic [-latex,draw,angle radius=1.75cm] {angle = y1--O--y2};    

% Z to z
\coordinate (y1) at (90:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (135:2);
\draw    pic [-latex,draw,angle radius=3.0cm] {angle = y1--O--y2};    
\node[] at (-1.5,3){$\theta$};

% X to x
\coordinate (y1) at (225:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (-65:2);
\draw    pic [-latex,draw,angle radius=0.7cm] {angle = y1--O--y2};    
\node[] at (0,-1){$\phi$};

\draw[<-,rotate=-35] (0.15,3.8) arc (-60:250:3.4mm and 1.25mm);
\node[]at (50:4.25){$w_{y}$};

\draw[<-,rotate=45] (0.15,4) arc (60:-250:3.4mm and 1.25mm);
\node[]at (130:4.2){$w_{z}$};

% draw spinner
\begin{scope}[every circle/.style={x={(1cm,0.8cm)},y={(0cm,1cm)}}] 
% compute offset to tangent point
\path[name path=ellipse 3,rotate around={-5:(0,0)}] (0,0) circle[x radius=0.5, y radius=.5];
\path[name path=radial 1] (0,0) -- (50:1);
\path [name intersections={of=ellipse 3 and radial 1}];
\coordinate (edge) at (intersection-1);

\draw[fill=white,thick,rotate around={-5:(-0.9,0.9)}] (-0.9,0.9) circle[x radius=0.5,y radius=0.5];
\fill[white] ($(-0.9,0.9)+(edge)$) -- ($(-1,1)+(edge)$) --
             ($(-1,1)-(edge)$) -- ($(-0.9,0.9)-(edge)$) -- cycle;% barely visible
\draw[thick] ($(-0.9,0.9)+(edge)$) -- ($(-1,1)+(edge)$)
             ($(-0.9,0.9)-(edge)$) -- ($(-1,1)-(edge)$);% barely visible
\draw[fill=white,thick,rotate around={-5:(-1,1)}] (-1,1) circle[x radius=0.5,y radius=0.5];

\coordinate (P) at (-1.5,1.5);% top of spinner
\coordinate (edge) at ($(0,0)!0.2!(edge)$);
\draw[thick,rotate around={-5:(-1,1)},] (-1,1) circle[x radius=0.1,y radius=0.1];
\fill[white] ($(P)+(edge)$) -- ($(-1,1)+(edge)$) -- ($(-1,1)-(edge)$) -- ($(P)-(edge)$) --  cycle;
\draw[thick] ($(P)+(edge)$) -- ($(-1,1)+(edge)$) ($(-1,1)-(edge)$) -- ($(P)-(edge)$);
\draw[thick,rotate around={-5:(P)},] (P) circle[x radius=0.1,y radius=0.1];
\end{scope}
\end{tikzpicture}
\label{Plattice}
\end{document}

demo

|improve this answer|||||
6

Thanks to john I have finally completed the figure. enter image description here

\documentclass[a4paper]{article}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{graphicx}
\usetikzlibrary{intersections,arrows.meta,angles,calc}
\usetikzlibrary{shapes.geometric}

\begin{document}
\begin{tikzpicture}
%\draw[step=1cm,gray,very thin] (-6,-6) grid (6,6);
%\foreach \x in {-4,-3,...,4}
    %\draw (\x cm,1pt) -- (\x cm,-1pt) node[anchor=north] {$\x$};
%\foreach \y in {-4,-3,...,4}
    %\draw (1pt,\y cm) -- (-1pt,\y cm) node[anchor=east] {$\y$};

\node[below] at (0,-0.1){O};  
\draw[name path=ellipse 1] (3.5,0) arc (0:360:3.5cm and 2cm);
\draw[name path=ellipse 2,rotate=50] (3.5,0) arc (0:360:3.5cm and 2cm);
\path [name intersections={of=ellipse 1 and ellipse 2}];
\coordinate [] (A) at (intersection-4);

\draw[very thick,-{latex}](0,0)--(0,3.5);
\draw[](0,3.5)--(0,4)node[above]{Z};
\node[]() at (85:3.5){$\dot{\phi}$};
\draw[shorten >=-1cm,very thick,-{latex}](0,0)--(A);
\node[](x1) at (-65:3.5){$x$};
\node[] at (-75:3){$\dot{\theta}$};

\draw[](0,0)--(-25:4.5)node[right]{Y};
\draw[dash pattern=on 3mm off 3mm](0,0)--(-10:4.5)node[right](x2){$x^{'}$};
\draw[dash pattern=on 3mm off 3mm](0,0)--(65:4.5)node[above]{$y^{'}$};
\draw[-latex,thick](0,0)--(55:4.5)node[above]{$y$};
\draw[-latex](0,0)--(225:4.5)node[below left]{X};
\draw[-latex](0,0)--(135:4.5)node[above]{$z$};
\node[above] at(130:4.5){$z'$};
\node[] at (135:5){$\dot{\psi}$};

%Arcs
% x to x'
%\coordinate (x1) at (-65:2);
\coordinate (O) at (0,0);
%\coordinate (x2) at (-10:2);
\draw    pic [-latex,draw,angle radius=0.7cm] {angle = x1--O--x2};    
\node[] at (0.8,-0.7){$\psi$};

% y to y'
\coordinate (y1) at (55:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (65:2);
\draw    pic [-latex,draw,angle radius=1.75cm] {angle = y1--O--y2};    

% Z to z
\coordinate (y1) at (90:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (135:2);
\draw    pic [-latex,draw,angle radius=3.0cm] {angle = y1--O--y2};    
\node[] at (-1.5,3){$\theta$};

% X to x
\coordinate (y1) at (225:2);
\coordinate (O) at (0,0);
\coordinate (y2) at (-65:2);
\draw    pic [-latex,draw,angle radius=0.7cm] {angle = y1--O--y2};    
\node[] at (0,-1){$\phi$};

\draw[<-,rotate=-35,thick] (0.15,3.8) arc (-60:250:3.4mm and 1.25mm);
\node[]at (50:4.25){$w_{y}$};

\draw[<-,rotate=45,thick] (0.15,4) arc (60:-250:3.4mm and 1.25mm);
\node[]at (130:4.2){$w_{z}$};

%Wx
\draw[->,thick] (-62:3) arc (-30:250:3mm and 3mm);
\node[right] at (-60:3){$w_{x}$};
%Rod of Spinner
\draw[thick,rotate=45] (0,0)--(60:0.2)|-(90:0.95);
\draw[thick,rotate=45] (0,0)--(120:0.2)|-(90:0.95);

% draw spinner
\coordinate (P) at (-1.3,1.3);% top of spinner
\begin{scope}[shift={(0.3,-0.3)}, rotate around={-5:(-1,1)},
  every circle/.style={x={(1cm,0.8cm)},y={(0cm,1cm)}}] 
% compute offset to tangent point
\path[name path=ellipse 3] (0,0) circle[x radius=0.5, y radius=.5];
\path[name path=radial 1] (0,0) -- (55:1);
\path [name intersections={of=ellipse 3 and radial 1}];
\coordinate (edge) at (intersection-1);

\draw[fill=white,thick] (-0.9,0.9) circle[x radius=0.5,y radius=0.5];
\draw[fill=white,thick] (-1,1) circle[x radius=0.5,y radius=0.5];
\draw[thick] ($(-0.9,0.9)+(edge)$) -- ($(-1,1)+(edge)$)
             ($(-0.9,0.9)-(edge)$) -- ($(-1,1)-(edge)$);% barely visible

\coordinate (edge) at ($(0,0)!0.2!(edge)$);
\draw[thick] (-1,1) circle[x radius=0.1,y radius=0.1];
\fill[white] ($(P)+(edge)$) -- ($(-1,1)+(edge)$) -- ($(-1,1)-(edge)$) -- ($(P)-(edge)$) --  cycle;
\draw[thick] ($(P)+(edge)$) -- ($(-1,1)+(edge)$) ($(-1,1)-(edge)$) -- ($(P)-(edge)$);
\draw[thick] (P) circle[x radius=0.1,y radius=0.1];
\end{scope}
\draw[thick,-latex](0,0)--(135:3);

\end{tikzpicture}
\label{Plattice}
\end{document}
|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.