sam.hack...@sent.com wrote:
It has a get_angle() function, the first line of this checks if length_sqrd() == 0, and then returns the angle as 0. This seems wrong to me, if the vector is (1,-1), then length_sqrd (1**2 + -1**2) returns 0,
You're fooling yourself with operator precedence. If you're typing that into the interactive interpreter, you need to write it as 1**2 + (-1)**2 which has the value 2. The code given for get_length_sqrd() is return self.x**2 + self.y**2 which won't suffer from that problem. -- Greg