Support non-square elements in regular quad mesh generation

as titled
i'll change it