תרגיל #10 בקורס תוכנה 1

 

בתרגיל זה תממשו  מנשק גרפי למשתמש (GUI) עבור אפליקציית "עולם פראי" (תרגיל 7).

המנשק כולל:

 

להלן דוגמא למנשק עבור עולם בגודל 20X20:

 

 



לצורך תרגיל זה עליכם לעדכן את המחלקה World כך שתכיל, בנוסף למתודות הקיימות, גם את המתודות הבאות:

§         public int getSize() – עבור עולם שגודלו n x n יוחזר n.

§         public Species getSpecies(int x, int y) – מחזירה את מין החיה שבמשבצת  (x,y).  אם אין חיה במשבצת זו יוחזר null.

§         public boolean getVegetation(int x, int y) – מחזירה true אם במשבצת (x,y) יש צמחיה, ו- false אחרת.

§         public void simulateNextMove() - ביצוע סימולציה של פעולת חיה אחת, לפי הסדר שהוגדר בתרגיל 7.  כלומר, בקריאה הבאה תופעל הסימולציה של החיה הבאה בסבב.

 

שימו לב כי עליכם להימנע משכפול קוד במחלקה המעודכנת.

מלבד השינויים שפורטו לעיל, אין לבצע כל שינוי שהוא במחלקות ובמנשקים של תרגיל 7.

 

עליכם לממש שתי מחלקות חדשות:

1.       WorldGUI – אחראית על המנשק למשתמש.  מחלקה זו הינה בעלת בנאי יחיד עם החתימה הבאה: public WorldGUI(World world) .

2.       המחלקה Main – אחראית על הרצת האפליקציה.  המחלקה תיצור עולם בגודל 20x20 עם שני אוכלי עשב במשבצות  (4,4) ו- (14,14)  ושני טורפים במשבצות (4,14)  ו- (14,4).

 

 

הערות למימוש:

ImageData imageData = new ImageData("c:\\Tiger.gif");

Image predatorImage = new Image(Display.getDefault(),imageData);

 

 

 

 

                                                                   בהצלחה!!!