【发布时间】:2014-03-21 17:54:52
【问题描述】:
我正在尝试使用以下代码在我的位图上逐个像素地画一个圆圈:
for(int j = ((int)x - 20); j < ((int)x + 20); j++){
for(int k = ((int)y - 20); k < ((int)y + 20); k++){
int colorX = bitmap.getPixel((int)j, (int)k);
if(Color.red(colorX) == 0 && Color.green(colorX) == 0 && Color.blue(colorX) == 0){
if(Math.sqrt(((j - (( int ) x )) ^ 2 ) + ((k - (( int ) y )) ^ 2) ) <= 20)
bitmap.setPixel(j, k, Color.YELLOW);
}
}
}
但是有一个问题,这不是画圆..它看起来像一个三角形..
有人可以帮我吗?
提前非常感谢;)
【问题讨论】:
-
您是否有理由这样做而不是使用
Canvas? -
是的,我需要检查 j、k 处的每个像素以查看颜色。如果下面的像素是黑色的,我只会画一个黄色的像素
-
@Deev 我编辑了这个问题,向你展示我需要这样做......因为我需要检查像素的颜色
-
看看 ^ 运算符在 java 中的含义
-
顺便说一句,您正在做的事情可能很糟糕。想法,您很可能应该使用 porter duff xfer 模式
标签: android view draw pixel geometry