public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _repeatFactor = (IfcVector) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public static IfcVector CrossProduct(IfcVector v1, IfcVector v2) { if (v1.Dim == 3 && v2.Dim == 3) { XbimVector3D v3D = v1.XbimVector3D().CrossProduct(v2.XbimVector3D()); return(new IfcVector(v3D.X, v3D.Y, v3D.Z, v3D.Length)); } else { throw new ArgumentException("CrossProduct: Both Vectors must have the same dimensionality"); } }
public override void Parse(int propIndex, IPropertyValue value, int[] nestedIndex) { switch (propIndex) { case 0: _pnt = (IfcCartesianPoint)(value.EntityVal); return; case 1: _dir = (IfcVector)(value.EntityVal); return; default: throw new XbimParserException(string.Format("Attribute index {0} is out of range for {1}", propIndex + 1, GetType().Name.ToUpper())); } }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _pnt = (IfcCartesianPoint)value.EntityVal; break; case 1: _dir = (IfcVector)value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public static IfcVector CrossProduct(IfcVector v1, IfcVector v2) { if (v1.Dim == 3 && v2.Dim == 3) { XbimVector3D v3D = v1.XbimVector3D().CrossProduct(v2.XbimVector3D()); return new IfcVector(v3D.X, v3D.Y, v3D.Z, v3D.Length); } else { throw new ArgumentException("CrossProduct: Both Vectors must have the same dimensionality"); } }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _pnt = (IfcCartesianPoint) value.EntityVal; break; case 1: _dir = (IfcVector) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }