我想使用 绘制循环(或多边形路径)TikZ
。我提供了代码,尝试使用直角坐标和极坐标来执行此操作。在第一幅图中,我认为循环被辅助线遮住了。第二幅图不是按照我想要的方式绘制的。
在这两幅图中,我都在网格上绘制了路径。我想让网格线的粗细为循环中线段的四分之一,并且是浅灰色。我认为绘制的线条的默认粗细TikZ
是 0.4pt;所以,我认为规范line width=0.1pt
会让辅助线的粗细为循环的四分之一。但事实并非如此。我忘了如何让线条变成浅灰色。(我以为辅助线默认是灰色的。)
\documentclass{amsart}
\usepackage{tikz}
\usetikzlibrary{intersections,decorations.pathreplacing,positioning}
\begin{document}
\begin{tikzpicture}
\draw (0,0) grid [xstep=0.5, ystep=0.5, line width=0.1pt,gray] (6,6);
\draw[line width=0.5pt] (4,1) -- ++(1,0) -- ++(0,3) -- ++(-2,0) -- cycle;
\end{tikzpicture}
\vskip0.25in
\begin{tikzpicture}
\draw (0,0) grid [xstep=0.5, ystep=0.5, line width=0.1pt,gray] (6,6);
\draw[line width=0.5pt] (1,1.5) -- ++(2:135) -- ++(1:135) -- ++(3:90) -- ++ (1:120) -- cycle;
\end{tikzpicture}
\end{document}
答案1
绘图选项需要传递给命令\draw
而不是grid
。(编辑:Qrrbrbirlbel 首先说。
极坐标指定为(angle:distance)
。但请注意,角度135
总是朝着同一方向,因此路径的前两段朝着同一方向:
(1,1.5) -- ++(135:2) -- ++(135:1)
和
(1,1.5) -- ++(135:3)
是等效的。
因此,部分更正的代码如下所示:
\documentclass{amsart}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [gray, line width=0.1pt] (0,0) grid [xstep=0.5, ystep=0.5] (6,6);
\draw [line width=0.5pt] (4,1) -- ++(1,0) -- ++(0,3) -- ++(-2,0) -- cycle;
\end{tikzpicture}
\vskip0.25in
\begin{tikzpicture}
\draw [gray, line width=0.1pt] (0,0) grid [xstep=0.5, ystep=0.5] (6,6);
\draw [line width=0.5pt] (1,1.5) -- ++(135:2) -- ++(135:1) -- ++(90:3) -- ++ (120:1) -- cycle;
\end{tikzpicture}
\end{document}
但这可能不是你想要的:
线条特写:
编辑
该shapes.geometric
库可让您轻松绘制诸如正多边形之类的东西:
\documentclass[tikz,border=5pt]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}
\draw [gray, line width=.1pt] (0,0) grid [xstep=0.5, ystep=0.5] (6,6);
\node [shape=regular polygon, regular polygon sides=5, draw, minimum width=15mm] at (3,3) {};
\end{tikzpicture}
\end{document}
但是,如果这不合适,你可以尝试这个:
\begin{tikzpicture}
\draw [gray, line width=.1pt] (0,0) grid [xstep=0.5, ystep=0.5] (6,6);
\begin{scope}[shift={(1,1.5)}]
\draw [line width=0.5pt] ++(0:1) -- ++(72:1) -- ++(144:1) -- ++(216:1) -- ++ (288:1) -- cycle;
\end{scope}
\end{tikzpicture}
编辑 编辑
或者不规则...
\begin{tikzpicture}
\draw [gray, line width=.1pt] (0,0) grid [xstep=0.5, ystep=0.5] (6,6);
\begin{scope}[shift={(3,1.5)}]
\draw [line width=0.5pt] ++(0:2) -- ++(72:1) -- ++(144:3) -- ++(216:2.5) -- ++ (288:.5) -- cycle;
\end{scope}
\end{tikzpicture}