填充几何图像
你只要知道如何建立和绘制一个几何图形,填充就是很简单的事情了。只需要调用Graphics2D对象的fill()方法,并且传递给它一个Shape类型的引用即可。这项操作可针对任何几何图形,但要求一定是封闭的。
让我们修改一下前面的例子,试验一下填充操作。
public void paint(Graphics g)
{
Graphics2D g2D = (Graphics2D)g;
Star star = new Star(0,0); // Create a star
float delta = 60; // Increment between stars
float starty = 0; // Starting y position
// Draw 3 rows of 4 stars
for(int yCount = 0 ; yCount<3; yCount++)
{
starty += delta; // Increment row position
float startx = 0; // Start x position in a row
// Draw a row of 4 stars
for(int xCount = 0 ; xCount<4; xCount++)
{
g2D.setPaint(Color.blue); // Drawing color blue
g2D.draw(star.atLocation(startx += delta, starty));
g2D.setPaint(Color.green); // Color for fill is green
g2D.fill(star.getShape()); // Fill the star
}
}
}
现在小应用程序窗口看起来像下面所显示的样子。但它是彩色的。
如何工作
我们为绘制和填充星形设置不同的颜色,使它们都能够显示出来。你可以调用fill()方法填充几个几何图形而不绘制它的轮廓线。为了完成这项操作,你应该把内循环修改成为;
for(int xCount = 0 ; xCount<4; xCount++)
{
g2D.setPaint(Color.green); // Drawing color green
g2D.draw(star.atLocation(startx += delta, starty));
现在我们得到的每个几何图形用绿色填充,而没有轮廓线的。
考无忧小编推荐:
更多计算机等级考试真题及答案>>>点击查看
想知道更多关于计算机等级报考指南、考试时间和考试信息的最新资讯在这里>>>点击查看