Support non-square elements in regular quad mesh generation

as titled
I am not sure if your argument combinations are intuitive. If I understand it correctly, you require either "length + number of subdivisions" *or* "length + edge_length"
But "length + edge length" need not result in a int number of elements. I think "number of subdivision + edge length" would make more sense.
(I.e. I want 50 elements with size 20 each...)