如何正确绘制球体的平行线?赤道是可以的:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\fill[ball color=blue!20] (0,0) circle (1.5);
\draw [thick,dotted] plot [domain=0:pi] ({1.5*cos(\x r)},{0.2*sin(\x r)},0);
\draw [thick] plot [domain=pi:2*pi] ({1.5*cos(\x r)},{0.2*sin(\x r)},0);
\end{tikzpicture}
\end{document}
然而,其他的相似之处却很难实现。
答案1
这是实现此目的的一种方法:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\fill[ball color=blue!20] (0,0) circle (1.5 cm);
\newcommand\latitude[1]{%
\draw (#1:1.5) arc (0:-180:{1.5*cos(#1)} and {0.2*cos(#1)});
\draw[dashed] (#1:1.5) arc (0:180:{1.5*cos(#1)} and {0.2*cos(#1)});
}
\latitude{30};
\latitude{0};
\latitude{-30};
\end{tikzpicture}
\end{document}
可以通过设置半径(1.5 和 0.2)变量来改进。
答案2
您可以使用以下tikz-3dplot-circleofsphere
包 这里
\documentclass[tikz,border=1mm, 12 pt]{standalone}
\usepackage{tikz-3dplot-circleofsphere}
\begin{document}
\def\r{3}
\tdplotsetmaincoords{60}{125}
\begin{tikzpicture}[tdplot_main_coords]
\begin{scope}
\fill[ball color=blue!20,tdplot_screen_coords] (0,0,0) circle (\r);
\tdplotCsDrawLatCircle{\r}{0}
\end{scope}
\foreach \a in {-75,-60,...,75}
\tdplotCsDrawLatCircle[tdplotCsFront/.style={black}]{\r}{\a};
\end{tikzpicture}
\end{document}