ふお===
何かスパゲッティー通りこしてペペロンチーノになってきた。
ちょっと今思ったのですが、もう一つグローバル変数だけのマップをつくればいいかな。
小さいエリア集合のマップを最初から一つの大きなマップ(グローバル座標もち)にすればいいんじゃね?
そうすればエリアからG座標の計算やエリアが跨った時の計算も楽になるので。

しかし、問題はどうやって
エリア座標(0, 0)               エリア座標(1, 0)
    グローバル座標(0, 0), (1, 0)        グローバル座標(2, 0), (3, 0)
              (0 1), (1, 1)                  (2, 1), (3, 1)
エリア座標(0, 1)               エリア座標(1, 1)
    グローバル座標(0, 2), (1, 2)        グローバル座標(2, 2), (3, 2)
              (0 3), (1, 3)                  (2, 3), (3, 3)

(0, 0), (1, 0), (2, 0), (3, 0)
(0 1), (1, 1), (2, 1), (3, 1)
(0, 2), (1, 2), (2, 2), (3, 2)にするのにはどういう風にループまわそう?
concatみたいなものjavaにありますかね?

皆さんの助言凄く助かるのですが、如何せん実装時にペペロンチーノ化する。