我想在P5.js中使用一个形状(例如一个矩形)作为另一个形状(例如圆圈或直线)的遮罩或剪切路径
我可以看到使用图像作为蒙版的解决方案,但不能看到形状。似乎mask()
不是形状的函数:
https://p5js.org/reference/#/p5.Image/mask
答案 0 :(得分:1)
使用P5.js开箱即用的方法无法实现。
现在你的问题更多的是数学问题而不是P5.js问题。我建议您搜索类似"圆形矩形交叉点"大量的结果,包括这一个:Circle-Rectangle collision detection (intersection)
根据您的目的,您可以将图形绘制到图像中,然后将这些图像用作蒙版。但你更有可能自己要计算交叉点。您或许可以找到一个能够为您完成此任务的库,但同样,P5.js并不是一个简单易用的方式。
答案 1 :(得分:1)
是的,可以。
_LIBCPP_INLINE_VISIBILITY
创建一个额外的渲染上下文。createGraphics()
循环中,请在此上下文中绘制一些内容,这将是您的
面具。结果中应显示的任何内容都必须上色
使用Alpha通道,例如draw
。fill('rgba(0, 0, 0, 1)'
。myImage.mask(circleMask)
这是一个工作代码示例:
image(myImage, x, y, w, h)