+ optimize polygon generation (pre-alloc std::vector)