Isn't there a mistake in here: If u1 + u2 > 1, then define v1 = 1 - u1 and v2 = 1 - u2, which are also random uniform variates. You can verify that the sum v1 + v2 ≤ 1, which means that the vector v1*a + v2*b is in the triangle with sides a and b. So if u1=.55, u2=.55, then u1+u2>1, then v1=-.45, v2=-.45 which makes a vector v1*a + v2*b outside the parallelogram no?