Расчет близости по 2D вектору

Я пытаюсь написать простую систему карт для игры. Он использует 2D вектор для хранения объектов области (фрагментов карты), и теперь я хочу сделать область 3х3 близкой. Области хранятся в:

std::vector<std::vector<Area>>

Моя текущая проверка близости использует:

bool area_exist;
if (x - 1 < 0 || y + 1 > max_y)
area_exist = true;
else
area_exist = false;
if (area_exist)
Area & p_area_right_top = areas[x - 1][y + 1];
if (x - 1 < 0)
area_exist = true;
else
area_exist = false;
if (area_exist)
Area& p_area_top = areas[x - 1][y];...

В этом варианте я должен сначала проверить наличие области.

Есть ли другой способ получить объекты близости 3х3?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]