/// <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 IfcLoop a, IfcLoop b) { if (a.Equals(b)) return true; IfcPolyLoop aLoop = a as IfcPolyLoop; IfcPolyLoop bLoop = b as IfcPolyLoop; if (aLoop != null && bLoop != null) return aLoop.GeometricEquals(bLoop); else throw new XbimGeometryException("Only loops of type IfcPolyLoop are currently supported"); }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _bound = (IfcLoop) value.EntityVal; break; case 1: _orientation = value.BooleanVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }