我正在为p5.js开发一个插件库,我需要在某些功能中设置几种填充/描边颜色。
有没有办法获得当前的填充/笔划值,以便我可以确保当用户调用所述函数时,他不必担心我设置的颜色?
这类事:
function foo(){
var tempColor = getFill(); //Hypothetical get color function
// ...
fill(color1); //Some color I use
// ...
fill(color2); //Another color I use
// ...
fill(tempColor); //Reset fill color to user set
}
编辑:虽然没有记录,但我在p5.js中找到了一些curFillColor变量的引用,但我没有找到使用它的方法。
答案 0 :(得分:1)
嘿,我不知道是否来晚了。我也在尝试为p5创建一个插件库。所以我在做的是在使用填充之前和调用pop之后调用push。因此,我确保填充已恢复。
答案 1 :(得分:0)
P5.js是开源的,因此您可以在调用fill()
函数here时确切了解他们的行为:
p5.prototype.fill = function() {
this._renderer._setProperty('_fillSet', true);
this._renderer._setProperty('_doFill', true);
this._renderer.fill.apply(this._renderer, arguments);
return this;
};
将您带到特定于渲染器的fill
变量。你可以追踪它,但基本上:没有一种简单的方法来获得当前的填充颜色。
您可能想要做的是在库中使用缓冲区。不要在主草图上调用fill()
;在缓冲区上调用fill()
。将所有绘图都放到缓冲区中,然后将该缓冲区绘制到草图中。