如何向 \Begin {Scope} 添加选项,如 [fill=..., 阴影角度, 顶部颜色, 底部颜色]?
\begin {scope}[color=OrangeD]
\draw [-] plot[smooth, tension=.7] coordinates {(-5.25,1) (-5.15,1.15) (-4.8,1.3) (-4.6,1.6) (-4.3,1.7) (-4.05,2.05) (-3.75,2.1)};
\draw [-](-3.9,2.3) node (v2) {} -- +(0.55,-0.05) -- +(0.5,-0.65) -- +(0.35,-0.45) node (v1) {};
\draw [-] plot[smooth, tension=.7] coordinates {(v1) (-3.8,1.8) (-4.05,1.45) (-4.35,1.35) (-4.5,1.05) (-4.9,0.9) (-5.05,0.65)};
\draw [-](-3.75,2.1)--(-3.9,2.3);
\end{scope}
答案1
如果你这样做\begin{scope}[color=orange,fill=blue]
,这将设置绘制和填充的默认颜色。但这并不意味着所有路径都将被绘制和填充。以下面的例子为例,由于没有为路径宏提供其他选项,\draw
只是绘制矩形,\fill
只是填充它,而 则\filldraw
同时填充两者。请注意,我使用的是draw=orange
,而不仅仅是orange
。
\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\begin {scope}[draw=orange,fill=blue,ultra thick]
\draw (0,0) rectangle ++(1,0.5) node [below right] {\texttt{\textbackslash draw}};
\fill (0,-1) rectangle ++(1,0.5) node [below right] {\texttt{\textbackslash fill}};
\filldraw (0,-2) rectangle ++(1,0.5) node [below right] {\texttt{\textbackslash filldraw}};
\end{scope}
\end{tikzpicture}
\end{document}
你可以通过以下方式使这三个行为相同
\begin {scope}[
every path/.append style={draw=orange,fill=blue},
ultra thick,xshift=3cm]
\draw (0,0) rectangle ++(1,0.5) node [below right] {\texttt{\textbackslash draw}};
\fill (0,-1) rectangle ++(1,0.5) node [below right] {\texttt{\textbackslash fill}};
\filldraw (0,-2) rectangle ++(1,0.5) node [below right] {\texttt{\textbackslash filldraw}};
\end{scope}
请注意这里的区别,颜色设置被添加到样式中every path
,这意味着在范围内,\draw (0,0) ...
将类似于\draw [draw=orange,fill=blue] (0,0) ...
,并且与\fill
和类似\filldraw
:
如果你不只draw=orange
写orange
,或者color=orange
,则会将默认颜色设置为橙色,但它不会激活所有路径的绘图,因此使用该设置你将获得
由于,所有三个矩形都被填充fill=blue
,第二个矩形没有边框,因为它\fill
没有draw
选项,并且节点文本是橙色,因为设置这样的颜色也会影响它们。
对于你的箭头,我猜你想让轮廓有一种颜色,而箭头的内部则有另一种颜色。为此,你应该使用一条路径,而不是多条路径,这样就scope
没有必要了,使用
\filldraw [draw=orange,fill=blue]
plot[smooth, tension=.7] coordinates {(-5.25,1) (-5.15,1.15) (-4.8,1.3) (-4.6,1.6) (-4.3,1.7) (-4.05,2.05) (-3.75,2.1)}
--(-3.9,2.3) node (v2) {} -- +(0.55,-0.05) -- +(0.5,-0.65) -- +(0.35,-0.45) node (v1) {}
-- plot[smooth, tension=.7] coordinates {(v1) (-3.8,1.8) (-4.05,1.45) (-4.35,1.35) (-4.5,1.05) (-4.9,0.9) (-5.05,0.65)};
这给你