This function should get its own class imo. its only very remotely related to GeometryHelper.
Also, why pass a pointer to the vector here and not a constref?