Для целей оптимизации кода я хочу создать массив 2d, содержащий 40 равных квадратов (10x10px). Каждый квадрат представляет 1 \ 40 отображаемого окна (400x400 пикселей).2d инициализация и выбор квадратов массива
Я заполняю массив 2d стандартной двунаправленной методологией цикла.
int col = 40;
int row = 40;
int boxPosition = 0; //Position of the box (coordinates)
Integer[][] boxes = new Integer[40][40];
for (int i = 0; i < col; i++) {
for (int j = 0; j < row; j++) {
boxes[i][j] = boxPosition;
boxPosition += 10; //Creates a 10px box.
}
boxPosition = 0; //Resets box size for next column
}
Есть несколько кругов в этой программе. У нас есть корабль (круг), который стреляет ракетами (кругами) в сторону врагов (кругов).
Я хочу запустить обнаружение столкновения ТОЛЬКО, когда на одном из квадратов есть пуля + враг. Это значительно оптимизирует код.
Вопрос в том, как создать эти квадраты из массива 2d? Как выбрать каждый квадрат? Как проверить, находятся ли ракеты и враги внутри одного квадрата?
Примеры кода ВЕЛИКОЕ ПРИМЕНЕНИЕ.
Спасибо.
Что означает boxSize? Если это размер «ящика», то они не все равны. Если это позиционная вещь, тогда вам нужно более четко понять, что это значит. – JLewkovich
Отличный пункт. Да, это позиция, я просто это исправил. – Gregg1989
Таким образом, сохранение координат как одного значения на самом деле не так. Вам нужно как минимум два значения координат, если вы находитесь на 2D-сетке – JLewkovich