2013-10-12 70 views
0

我想在Processing中按下按鈕來添加/刪除一個橢圓。我使用void keyPressed()和void keyReleased()作爲鍵。但我怎樣才能使用if語句添加/刪除橢圓?如何使用處理中的按鍵添加/刪除形狀?

現在我可以添加更多,並刪除一些省略號。例如,如果我有一個我可以按一個按鈕,然後再有一個。或者按一個按鈕刪除一個。但是現在我想用這些橢圓(最多4個)爲它們中的每一個使用不同的鍵集。我怎樣才能做到這一點?

回答

2

你需要做的是有一個布爾值被讀取,每當橢圓被繪製。如果那是真的,畫出來,如果不是這樣的話!按鍵應該只是切換布爾值。就像這樣:

boolean iShouldDrawTheEllipse = true; 
void draw() { 
    background(0); 
    if(iShouldDrawTheEllipse) ellipse(50,50,10,10); 
} 
void keyPressed() { 
    iShouldDrawTheEllipse = !iShouldDrawTheEllipse; 
} 
+0

現在我可以添加更多,並刪除一些省略號。例如,如果我有一個我可以按一個按鈕,然後再有一個。或者按一個按鈕刪除一個。但是現在我想用這些橢圓(最多4個)爲它們中的每一個使用不同的鍵集。我怎樣才能做到這一點? – user2873288

+1

然後,請將其轉換爲另一個問題,如果它回答了您的第一個問題,請接受此問題! –

0

你可以使用一些boolean s到確定的該橢圓您必須打印並沒有。

E.G.

void keyPressed(){ 
    switch(keyCode){ 
    case 'z': 
     drawingFirstEllipse = !drawingFirstEllipse; 
     break; 
    case 'x': 
     drawingSecondEllipse = !drawingSecondEllipse; 
    break; 
    case 'c': 
     drawingThirdEllipse = !drawingThirdEllipse; 
    break; 
    case 'v': 
     drawingFourthEllipse = !drawingFourthEllipse; 
    break; 
    } 
} 

然後在您的void draw(void)方法,你可以很容易地繪製橢圓:

void draw(){ 
    background(0); 
    if(drawingFirstEllipse) ellipse(50, 50, 10, 10); 
    if(drawingSecondEllipse) ellipse(50, 50, 70, 10); 
    if(drawingThirdEllipse) ellipse(50, 50, 130, 10); 
    if(drawingFourthEllipse) ellipse(50, 50, 190, 10); 
} 

我希望我幫助[;

相關問題