java 图形区域填充算法

taoshui123 2008-10-07 01:16:57
为何无论用什么颜色在JPanel 上画了图形后,然后用函数取该范围内点的像素值都不变.
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
/*g.setColor(new Color(200,200,200));
//setBackground(new Color(200,200,200));*/
int n=N-1;
//int xBegin,xEnd,yBegin,yEnd;
r= getWidth()/(2*N) ;
/*System.out.println(r+","+getWidth()+","+getHeight());
for (int i=1;i<2*n;i+=2)
{
g.setColor(new Color(200,200,200));
//g.drawLine(i-1,r,i,r);
g.fillOval(i*r-r,r-r,2*r,2*r);
}

for(int i=3;i<2*N;i+=2)
{
g.setColor(new Color(200,200,200));
g.fillOval(r,i*r,2*r,2*r);
}
for (int i=3;i<2*N;i+=2)
{
g.setColor(new Color(200,200,200));
g.fillOval( (2*n-1)*r,i*r,2*r,2*r);
}
for (int i=3;i<8;i+=2)
{
g.setColor(new Color(200,200,200));
g.fillOval(i*r,(2*N-1)*r,2*r,2*r);
}
g.fillOval(7*r,(2*N-3)*r,2*r,2*r);
g.fillOval(7*r,(2*N-5)*r,2*r,2*r);
g.fillOval(9*r,(2*N-5)*r,2*r,2*r);
g.fillOval(11*r,(2*N-5)*r,2*r,2*r);
g.fillOval(11*r,(2*N-3)*r,2*r,2*r);
g.fillOval(11*r,(2*N-1)*r,2*r,2*r);
g.fillOval(13*r,(2*N-1)*r,2*r,2*r);
g.fillOval(15*r,(2*N-1)*r,2*r,2*r);
g.fillOval(17*r,(2*N-1)*r,2*r,2*r);

g.fillOval(5*r,7*r,2*r,2*r);
g.fillOval(7*r,7*r,2*r,2*r);
g.fillOval(5*r,9*r,2*r,2*r);
g.fillOval(7*r,9*r,2*r,2*r);
for ( int i=11;i<=15;i+=2)
g.fillOval(i*r,11*r,2*r,2*r); */
Robot robot;

try
{
robot=new Robot();
for(int j=r;j<=r;j++)
for(int i=0;i<=22*r;i++)
if ( robot.getPixelColor(i,j).equals(new Color(200,200,200)))
System.out.println(g.getColor()+","+robot.getPixelColor(i,j)+","+i+","+j);
}
catch(AWTException ex)
{
ex.printStackTrace();
}


}
...全文
444 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
taoshui123 2009-04-02
  • 打赏
  • 举报
回复
import java.util.*;
import parsell1.*;
import globle.*;
public class Help {

//static List <Node > stack=new ArrayList<Node>();
static Stack <Node> stack=new Stack<Node>();
static int number=-1;
public static void main(String[] args)
{
Node root=new Node();
stack.push(root.child[0]);

Node t=stack.pop();

t=new Node(); //为何改变t了,root.child[0]确还是空
//root.child[0]=new Node();
System.out.println(root.child[0].a);

}

}
shenjie1989 2008-11-20
  • 打赏
  • 举报
回复
不懂,帮顶
erzaidi 2008-11-20
  • 打赏
  • 举报
回复
很需要呢
不过不知道可不可以
以梦为马 2008-10-18
  • 打赏
  • 举报
回复
C/S的不懂
liaoyi_ipanel 2008-10-09
  • 打赏
  • 举报
回复
帮顶!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧