2013-02-14 17 views
0

我不得不遞歸繪製一個sierpinski三角形,通過繪製三個一個像素的正方形在彼此的頂部做出一個三角形。他告訴我們,我假設這將是我的遞歸基礎案例,「繪製算法將以屏幕的一個方形區域的座標作爲輸入,如果該方形是單個pizel的大小,它應該調用drawRect( )傳遞給paintComponent的對象,在屏幕上某處繪製一個像素的正方形。「在java中,我將如何確定一個正方形是否是單個像素的大小?

我如何知道屏幕的正方形區域是否是單個像素的大小?當我調用方法並執行寬度^ 2時,是否只發送該區域的寬度?如果面積是1,這是否意味着它的1個像素?

+0

是的,java中的尺寸通常以像素 – 2013-02-14 18:59:09

+1

爲單位,與確定100像素的正方形大小的方式相同。 – Woot4Moo 2013-02-14 19:00:02

+0

在這個意義上的基本情況意味着這裏沒有點遞歸,因爲最小尺寸(三角形中的三個1x1像素「盒子」)已經被繪製。因此,無論從何處開始遞歸,它都應該比1像素三角形「顯着大」。也就是說,從*三角形開始* - 不是三角形,因爲它們的基數爲400像素左右。 – 2013-02-14 19:01:53

回答

0

方(或可能是Rectangle)具有一個像素的大小,如果:

java.awt.Rectangle rect; 
// .... 
boolean isOnePixel = (rect.width == 1 && rect.height == 1); 

爲了簡化問題,我們asume的witdh和高度不能爲負數。
儘管Java矩形類允許。

相關問題