/// <summary> /// Compares two objects for geometric equality /// </summary> /// <param name="a"></param> /// <param name="b">object to compare with</param> /// <returns></returns> public static bool GeometricEquals(this IfcPolyline a, IfcPolyline b) { if (a.Equals(b)) { return(true); } if (a.Points.Count != b.Points.Count) { return(false); } for (int i = 0; i < a.Points.Count; i++) { if (!a.Points[i].GeometricEquals(b.Points[i])) { return(false); //dioes not deal with plines that have the same points but with a different start point } } return(true); }