public float Angle360()
{
var vec = this.Normalize();
float value = ((float)Math.Atan2(-vec.Y, vec.X)) % MathUtilities.Pi2;
return (value < 0) ? ((MathUtilities.Pi+value)+MathUtilities.Pi) : value;
}