I’m sure the developers can give a better answer, but without having studied the code closely, I presume the variable uVecLength should never assume the value zero. I can suggest a workaround, which is just a hack, not a real solution, but at least it’ll get rid of this particular error, even though the rest of the code isn’t guaranteed to work. Line 66 in flat.py says
uVecLength = uVec.length
Leave that line as it is, but insert the following two lines after it:
Make sure to keep the intendation as above. This way, the value uVecLength will never be zero, so you won’t get a divide-by-zero error.
(Incidentally the same code is copied a few lines below in another section, so if the same error occurs there, just rinse and repeat.)
But again, this is a hack and a workaround for something that appears to be a bug in the code. This solution is neither good nor should it be permanent.