public override void IfcParse(int propIndex, IPropertyValue value) { if (propIndex == 0) _position = (IfcAxis2Placement3D) value.EntityVal; else this.HandleUnexpectedAttribute(propIndex, value); }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: _position = (IfcAxis2Placement3D) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public IXbimGeometryObject Create(IfcGeometricRepresentationItem ifcRepresentation, IfcAxis2Placement3D objectLocation) { try { return _engine.Create(ifcRepresentation, objectLocation); } catch (AccessViolationException e) { Logger.ErrorFormat("EE001: Failed to create geometry #{0} of type {1}, {2]", ifcRepresentation.EntityLabel, ifcRepresentation.GetType().Name, e.Message); return null; } }
private static XbimMatrix3D ConvertAxis3D(IfcAxis2Placement3D axis3) { if (axis3.RefDirection != null && axis3.Axis != null) { XbimVector3D za = axis3.Axis.XbimVector3D(); za.Normalize(); XbimVector3D xa = axis3.RefDirection.XbimVector3D(); xa.Normalize(); XbimVector3D ya = XbimVector3D.CrossProduct(za, xa); ya.Normalize(); return new XbimMatrix3D(xa.X, xa.Y, xa.Z, 0, ya.X, ya.Y, ya.Z, 0, za.X, za.Y, za.Z, 0, axis3.Location.X, axis3.Location.Y, axis3.Location.Z, 1); } else return new XbimMatrix3D(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, axis3.Location.X, axis3.Location.Y, axis3.Location.Z, 1); }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: case 1: case 2: case 3: case 4: base.IfcParse(propIndex, value); break; case 5: _predefinedType = (IfcAnalysisModelTypeEnum) Enum.Parse(typeof (IfcAnalysisModelTypeEnum), value.EnumVal, true); break; case 6: _orientationOf2DPlane = (IfcAxis2Placement3D) value.EntityVal; break; case 7: if (_loadedBy == null) _loadedBy = new XbimSet<IfcStructuralLoadGroup>(this); _loadedBy.Add((IfcStructuralLoadGroup) value.EntityVal); break; case 8: _hasResults = (IfcStructuralResultGroup) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: case 1: case 2: case 3: base.IfcParse(propIndex, value); break; case 4: _Position = (IfcAxis2Placement3D)value.EntityVal; break; case 5: _ColourAppearance = (IfcColourRgb)value.EntityVal; break; case 6: _ColourTemperature = value.RealVal; break; case 7: _LuminousFlux = value.RealVal; break; case 8: _LightEmissionSource = (IfcLightEmissionSourceEnum)Enum.Parse(typeof(IfcLightEmissionSourceEnum), value.EnumVal); break; case 9: _LightDistributionDataSource = (IfcLightDistributionDataSourceSelect)value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: case 1: case 2: case 3: base.IfcParse(propIndex, value); break; case 4: _relatingStructuralMember = (IfcStructuralMember) value.EntityVal; break; case 5: _relatedStructuralConnection = (IfcStructuralConnection) value.EntityVal; break; case 6: _appliedCondition = (IfcBoundaryCondition) value.EntityVal; break; case 7: _additionalConditions = (IfcStructuralConnectionCondition) value.EntityVal; break; case 8: _supportedLength = value.RealVal; break; case 9: _conditionCoordinateSystem = (IfcAxis2Placement3D) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
protected virtual void BaseInit() { _creator = new XbimObjectCreator(this); if (_model == null) _model = XbimModel.CreateTemporaryModel(); using (XbimReadWriteTransaction trans = _model.BeginTransaction("Model initialization")) { _wcs = _model.Instances.New<IfcAxis2Placement3D>(); //set world coordinate system _wcs.SetNewDirectionOf_XZ( 0, 0, 1, 0, 1, 0); _wcs.SetNewLocation(0, 0, 0); trans.Commit(); } }
public override void IfcParse(int propIndex, IPropertyValue value) { switch (propIndex) { case 0: case 1: base.IfcParse(propIndex, value); break; case 2: _position = (IfcAxis2Placement3D) value.EntityVal; break; case 3: _polygonalBoundary = (IfcBoundedCurve) value.EntityVal; break; default: this.HandleUnexpectedAttribute(propIndex, value); break; } }
/// <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 IfcAxis2Placement3D a, IfcAxis2Placement3D b) { if (a.Equals(b)) return true; double precision = a.ModelOf.ModelFactors.Precision; return a.P[0].IsEqual(b.P[0], precision) && a.P[1].IsEqual(b.P[1], precision) && a.Location.GeometricEquals(b.Location); }
public XbimAxis2Placement3D(XbimDocument document) { _ifcAxis2Placement = document.Model.Instances.New<IfcAxis2Placement3D>(); }