עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

עזרה בפרויקט שאני מכין ב JAVA פרטים בפנים

Featured Replies

פורסם

אני עושה את המשחק Haxxagon כפרויקט סיום של י"ג תוכנה.

בעיקרון בניתי מחלקה בשם Hexagon שהיא מכילה את הערכים של כלל משבצת.

כדי לאתר מישבצת יצרת Vector <Vector<Hexagon>> tree ככה שכל עמודה של משבצות יהיה וקטור שמייצג ושומר אותה

ולכל הוקטורים יהיה אחד שישמור את כולם במרוכז...

public void paintComponent(Graphics g)
{
super.paintComponent(g);
lenghtOfSide=calculateLength();
h=(int)(lenghtOfSide*0.86);
d=(int)(lenghtOfSide*0.5);
calcuAlignPoint();
startPoint=new Point( 0+alignPoint.x, getHeight()-h*5-alignPoint.y);

//first hex
Vector<Hexagon> vec=new Vector<Hexagon>();
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(0).drawHex(g);

Hexagon tempHex=new Hexagon();
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
treeWidth.x=tempHex.getX()[0];
//line above the first

for (int i=1;i<5;i++)
{
startPoint.y-=h*2;
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
}

//add to the tree the first column

tree=new Vector<Vector<Hexagon>>();
tree.addElement(vec);

vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[4];
startPoint.y=tempHex.getY()[4];

tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<6;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[4];
startPoint.y=tempHex.getY()[4];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<7;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
hex.drawHex(g);
startPoint.y-=h*2;
}
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[4];
startPoint.y=tempHex.getY()[4];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<8;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[4];
startPoint.y=tempHex.getY()[4];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
treeHeight.x=tempHex.getY()[5];
for (int i=0;i<9;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
treeHeight.y=hex.getY()[1];
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[2];
startPoint.y=tempHex.getY()[2];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<8;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[2];
startPoint.y=tempHex.getY()[2];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<7;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[2];
startPoint.y=tempHex.getY()[2];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<6;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
tree.addElement(vec);
vec=new Vector<Hexagon>();

// start a new column

startPoint.x=tempHex.getX()[2];
startPoint.y=tempHex.getY()[2];
tempHex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
for (int i=0;i<5;i++)
{
hex.calcDimension(lenghtOfSide, d, h, startPoint.x,startPoint.y);
vec.addElement(hex);
vec.get(i).drawHex(g);
startPoint.y-=h*2;
}
treeWidth.y=hex.getX()[3];
tree.addElement(vec);
}

זה PAINT COMPONENT של הפנל...

בא אני גם יוצר את הוקטורים כדי לעשות את זה דינאמי עם פאנל

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

יש למישהוא פיתרון או דרך יעילה יותר לשמור את הנתונים??

בתודה מראש רז

נ.ב אני צירפתי את הפרוייקט כולו

[attachment deleted by admin]

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.