Using plain array in buildGeometry() but still compatible with ArrayList