Yeah, looks better. I still think you ought to be checking for v being 0 though, and dividing by it's magnitude... I haven't looked at the new version of the class, so I may be reading things a bit incorrectly (my apologies if I am). Are all vectors automatically normalized?