2016-11-27 3 views
0

Ich habe ein quadratisches Gitter von einem Gridlayout (4,4,0,0) für ein JPanel, sagen Sie einfach 4x4 für ein kleines BeispielAlgorithmus für ein Gitter oben links/unten rechts?

*-*-*-* 
*-*-*-* 
*-*-*-* 
*-*-*-* 

Say I Schleife durch die linke obere Ecke nur zu wollen. Für einen Fall,

*-* 
* 

Und für einen anderen Fall, die untere rechte Ecke.

* 
*-* 

Ich dachte an eine dynamische Schleife? Für größere Boards.

+0

ein Grundschema, um die verschachtelte Schleife verringern, die Sie Offsets hinzufügen kann, ist [hier] gezeigt (http://stackoverflow.com/a/22333914/230513). – trashgod

+0

Ich habe es herausgefunden. Ich werde es als Antwort posten, falls jemand interessiert ist. Eine dynamische For-Schleife. Könnte verbessert werden. –

Antwort

0

Gehäuse: 1 (oben links ab, sagt (0,0))

int csize = (number of cols)/2+1; 
for (int row = 0; row < (number of cols)/2; row++){ 
    csize--; 
    for (int col = 0; col < csize; col++){ 
       ...stuff..... 
    } 
} 

Gehäuse: 2 (untere rechte Ecke, ausgehend von etwa (4,4))

int csize = (number of cols)/2; 
for (int row = (number of cols) -1; row > (number of cols)/2; row--){ 
    csize++; 
    for (int col = (number of cols) -1; col > csize; col--){ 
         ...stuff... 
    } 
} 

ich irgendwie habe gerade eine Anfangsgröße von cols, und für die Spalte innerhalb der Reihen

Verwandte Themen