/// <summary> /// Compares two objects for geomtric equality /// </summary> /// <param name="a"></param> /// <param name="b">object to compare with</param> /// <returns></returns> public static bool GeometricEquals(this IfcCartesianTransformationOperator2D a, IfcCartesianTransformationOperator2D b) { bool originEqual = a.LocalOrigin.GeometricEquals(b.LocalOrigin); bool axis1Equal = (a.Axis1 != null && b.Axis1 != null && a.Axis1.GeometricEquals(b.Axis1)) || (a.Axis1 == null && b.Axis1 == null); bool axis2Equal = (a.Axis2 != null && b.Axis2 != null && a.Axis2.GeometricEquals(b.Axis2)) || (a.Axis2 == null && b.Axis2 == null); bool scaleEqual = a.Scale.Value == b.Scale.Value; return originEqual && axis1Equal && axis2Equal && scaleEqual; }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _definition = (IfcDefinedSymbolSelect) value.EntityVal; break; case 1: _target = (IfcCartesianTransformationOperator2D) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public virtual void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _repeatS = value.BooleanVal; break; case 1: _repeatT = value.BooleanVal; break; case 2: _textureType = (IfcSurfaceTextureEnum) Enum.Parse(typeof (IfcSurfaceTextureEnum), value.EnumVal, true); break; case 3: _textureTransform = (IfcCartesianTransformationOperator2D) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: case 1: base.IfcParse(propIndex, value); break; case 2: _parentProfile = (IfcProfileDef) value.EntityVal; break; case 3: _operator = (IfcCartesianTransformationOperator2D) value.EntityVal; break; case 4: _label = value.StringVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }