所以我寫了一個編譯的程序,但它不會做我想做的事情。它應該填充三角形而不使用填充多邊形。我試圖將代碼限制爲循環。填充沒有填充多邊形的三角形?
重點是讓三條線越來越小,以填充三角形的每個部分。 解決這個問題的方法是,我認爲應該找出循環應該停止的地方。我猜測了三角形的一半高度(140)。
import javax.swing.*;
import java.awt.*;
public class Tri extends JApplet
{
int x1=0;
int y1 = 140;
int x2 = 120;
int y2 = 140;
int x3 = 60;
int y3;
public void paint (Graphics page)
{
for (y3= 0; y3<=70; y3++)
{
page.drawLine (x1, y1, x2, y2);
page.drawLine (x2, y2, x3, y3);
page.drawLine (x3, y3, x1, y1);
y1++;
x2--;
y2--;
x1++;
}
}
}
1)請不要忘記添加'?'提問!有些人在頁面中搜索'?'如果'問題'中不存在,則直接進入下一個(實際)問題。 2)爲什麼編寫一個小程序?如果這是由於規格。由老師,請參考[爲什麼CS老師應該停止教Java applets](http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should-stop-teaching-java-applets/)。 –
這不是填充形狀的方法。實現*** [洪水填充算法](http://en.wikipedia.org/wiki/Flood_fill)*** –
不要在繪畫方法中調用repaint()。這將導致無限循環。 – camickr