我想用 tikz 画一个正多边形。它应该是这样的这但我希望这些点像球一样
\shade[ball color=black]
。
我遇到的另一个问题是无法运行 链接中的代码\documentclass{scrreprt}
。你能帮帮我吗?
先感谢您
技术
答案1
此示例绘制一个正 n 边形。更改8
in\def\n{8}
以选择边数。
\documentclass[border=3mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\def\n{8}
\foreach \i in {1, ..., \n}{
\node[circle, shade, ball color=black, outer sep=0pt, inner sep=2pt] (ball\i) at (\i*360/\n:1) {};
}
\foreach \i[remember=\i as \lasti (initially \n)] in {1, ..., \n}{
\draw (ball\lasti) -- (ball\i);
}
\end{tikzpicture}
\end{document}
答案2
与 Alain Matthes 合作tkz-berge
,这很容易做到:
\documentclass[border=2mm, tikz]{standalone}
\usepackage{tkz-berge}
\begin{document}
\begin{tikzpicture}
\GraphInit[vstyle=Shade]
\SetVertexNoLabel
\grCirculant[RA=3]{8}{1}%
\end{tikzpicture}
\end{document}
答案3
使用 PSTricks 的解决方案。curvepnodes
对于为任意给定数量的节点和曲线函数定义节点数组很有用。例如,我们可以使用它来制作一个圆上的 12 个节点的数组。Offset
作为旋转偏移量提供。
\documentclass[pstricks,margin=5mm]{standalone}
\usepackage{pst-node,pst-plot}
\begin{document}
\multido{\i=0+10}{10}{%
\begin{pspicture}[showpoints,dotscale=6](-4,-4)(4,4)
\pstVerb{/Offset \i\space def}%
\curvepnodes[plotpoints=13]{0}{360}{3 t Offset add PtoC}{A}
\psnpolygon[linecolor=red](0,\numexpr\Anodecount-1){A}
\end{pspicture}}
\end{document}