public override int GetHashCode() { unchecked { var hashCode = ControlPoints.Cast <Vector3>().GetHashCode(v => v.GetHashCode()); hashCode = (hashCode * 397) ^ KnotVectorU.GetHashCode(v => v.GetHashCode()); hashCode = (hashCode * 397) ^ Order; return(hashCode); } }