首页 > 解决方案 > 如何绘制png图像的形状?

问题描述

我的图像是一组数字。每个像素由 4 个数字表示,分别代表红色、蓝色、绿色和 alpha。如何围绕某个像素画一个一定半径的圆?

这段代码好像不行...totalRadius是圆的半径,index是中心像素的索引(红色分量,即index+1是绿色,index+2是蓝色...)r,g, b 和 a 代表圆圈的颜色。

for(let radius = 0; radius < totalRadius; radius++){
   for(let angle = 0; angle < 2*Math.PI; angle++){
          let pix = index + Math.round((Math.sin(angle) * radius * width * 4) + (Math.cos(angle) * radius * 4))
          border[pix] = r;
          border[pix + 1] = g;
          border[pix + 2] = b;
          border[pix + 3] = a;
    }
}

(请原谅我的英语,我不太流利)

标签: javascriptimage-processinggeometry

解决方案


推荐阅读