0

I want to draw a top to show the Gyroscopic Effect in my techinical reports,just like the figure : the Image want to draw

the top can be simplified like a circular cone ...... Could any body give some tips for me ?Thx for your kind reply....


I followed the code in marot marmot but It shows the top of circle with the ratio =1: enter image description here

How can I fix the bug?

  • You have an old version of the 3d library on your machine. This bug has been fixed. If you do not want to update your TeX installation, see tex.stackexchange.com/a/48776/121799. – user121799 Apr 27 at 13:43
  • How can I get the 3d libraty updated to the version ?I browse the web but my texlive 2018 just get the wrong result.... – Zhilai Liu May 10 at 4:50
  • Which TeX installation are you using? Normally there is a package manager for this. – user121799 May 10 at 4:52
2

Welcome to TeX-SE! This may give you a start. (I am not very good at typing in stuff from a screen shot, so I let it be.)

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{tikz-3dplot}
\usetikzlibrary{3d}
\definecolor{myc}{RGB}{151, 186, 204}
\begin{document}

\tdplotsetmaincoords{70}{110}
\begin{tikzpicture}[tdplot_main_coords,>=stealth]
\draw[->] (0,0,0) coordinate (O) -- ++ (5,0,0) node[anchor=north east]{$x$};
\draw[->] (O) -- ++(0,5,0) node[anchor=north west]{$y$};
\draw[->] (O) -- ++(0,0,5) node[anchor=south]{$z$};
 \begin{scope}[canvas is xy plane at z=4.9]
  \draw[dashed] circle [radius=1.5cm];
  \draw[dashed] (0,0) -- (60:1.5);
  \pgflowlevelsynccm
  \draw[very thick,orange,->] (0,0) -- (40:1.5);
  \draw[very thick,orange,->] (40:1.5) arc (40:60:1.5);
 \end{scope}

 \tdplotsetrotatedcoords{40}{15}{0}
 \begin{scope}[tdplot_rotated_coords]
  \pgfmathsetmacro{\R}{2}
%   \draw[->,dashed]  (O) -- ++ (5,0,0) node[anchor=north east]{$x'$};
%   \draw[->,dashed]  (O) -- ++(0,5,0) node[anchor=north west]{$y'$};
%   \draw[->,dashed]  (O) -- ++(0,0,5) node[anchor=south]{$z'$};
  \draw[very thick,orange] (O) -- (0,0,3);
  \draw[left color=myc,right color=myc,middle color=myc!60,fill opacity=0.5] 
  plot[variable=\x,domain=-110:70,smooth]
  ({\R*cos(\x)},{\R*sin(\x)},{3}) to[out=-80,in=75] (O)
  to[out=95,in=-100] cycle;
  \begin{scope}[canvas is xy plane at z=3]
  \draw[fill=myc,fill opacity=0.5] circle [radius=\R*1cm];
  \pgflowlevelsynccm
  \draw[very thick,green!70!black,->] (-180:\R/2) arc (-180:100:\R/2);
 \end{scope}

  \draw[very thick,orange,->] (0,0,3) -- (0,0,5);
 \end{scope}
\end{tikzpicture}
\end{document}

enter image description here

  • it's so greatful to your code.... – Zhilai Liu Apr 27 at 7:46
  • I follow the code from marmot but It shows the top of circle with the ratio =1: – Zhilai Liu Apr 27 at 10:04

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.