画布 - 重置周围的像素

时间:2014-05-08 09:50:35

标签: javascript canvas

我想将像素重置为透明,如下所示:

enter image description here

将白色视为透明。如何计算这些像素 如果重置50%,它将是半图像,如果100%,则将隐藏整个图像。在图片上是35% Circle仅供演出。它可以是任何方形图像。

1 个答案:

答案 0 :(得分:0)

对于画布上的每个点,计算与中心点的角度。基本来说:

angle = Math.atan2(y - cy, x - cx);

其中(cx,cy)是中心点的坐标,(x,y)是当前正在检查的像素的坐标。

如果此角度在您想要核心的范围内,请清除该像素。

为了简化这一点,请添加Math.PI*3/2,然后执行% Math.PI*2,最后乘以100/(Math.PI*2),以获得0(向上)逆时针到100的数字。 / p>

现在,这是一个简单的例子,看看这个数字是否小于你的目标百分比,如果这么清楚的话。