我使用 TikZ 定义了一个自定义形状。此形状有一个可选部分;如果要绘制此部分,则必须指定颜色。
所以我希望能够使用以下语法:
\node [MyShape] at (0,0) {}; % Draw the shape without the optional part
\node [MyShape, mycolour=blue] at (0,1) {}; % Draw the shape with the optional part in blue
我知道如何使用布尔键来打开和关闭选项。我知道如何使用键来传递颜色参数。但在这里我需要同时做这两件事!
答案1
综合这些评论,你似乎想使用pgfkeys
“样式. 这些可以带有参数,因此:
\tikzset{
/tikz/mycolour/.style={
colour of optional part=#1,
draw the optional part=true
}
}
意味着调用既mycolour=blue
设置可选部分的颜色(假设这就是所做/tikz/colour of optional part=<colour>
的)又设置绘制它的标志(假设这就是/tikz/draw the optional part
控制)。