protected override void SolveInstance(IGH_DataAccess DA) { // get input FemDesign.Shells.Slab slab = null; double avgMeshSize = 0; if (!DA.GetData(0, ref slab)) { return; } if (!DA.GetData(1, ref avgMeshSize)) { return; } if (slab == null) { return; } // FemDesign.Shells.Slab obj = FemDesign.Shells.Slab.AverageSurfaceElementSize(slab, avgMeshSize); // DA.SetData(0, obj); }
protected override void SolveInstance(IGH_DataAccess DA) { // get data FemDesign.Shells.Slab slab = null; List <FemDesign.Reinforcement.SurfaceReinforcement> surfaceReinforcement = new List <FemDesign.Reinforcement.SurfaceReinforcement>(); if (!DA.GetData(0, ref slab)) { return; } if (!DA.GetDataList(1, surfaceReinforcement)) { return; } if (slab == null || surfaceReinforcement == null) { return; } // FemDesign.Shells.Slab obj = FemDesign.Reinforcement.SurfaceReinforcement.AddReinforcementToSlab(slab, surfaceReinforcement); // return DA.SetData(0, obj); }
protected override void SolveInstance(IGH_DataAccess DA) { // get input FemDesign.Shells.Slab slab = null; if (!DA.GetData(0, ref slab)) { return; } if (slab == null) { return; } // return DA.SetData(0, slab.Guid); DA.SetData(1, slab.SlabPart.GetRhinoSurface()); DA.SetDataList(2, slab.SlabPart.Thickness); DA.SetData(3, slab.Material); DA.SetData(4, slab.SlabPart.ShellEccentricity); DA.SetData(5, slab.SlabPart.ShellOrthotropy); DA.SetDataList(6, slab.SlabPart.GetRhinoCurves()); DA.SetDataList(7, slab.SlabPart.GetEdgeConnections()); DA.SetData(8, slab.SlabPart.LocalX.ToRhino()); DA.SetData(9, slab.SlabPart.LocalY.ToRhino()); DA.SetData(10, slab.SurfaceReinforcementParameters); DA.SetDataList(11, slab.SurfaceReinforcement); DA.SetData(12, slab.Name); }
public static Dictionary <string, object> SlabDeconstruct(FemDesign.Shells.Slab slab) { return(new Dictionary <string, object> { { "Guid", slab.Guid }, { "Surface", slab.SlabPart.Region.ToDynamoSurface() }, { "ThicknessItems", slab.SlabPart.Thickness }, { "Material", slab.Material }, { "ShellEccentricity", slab.SlabPart.ShellEccentricity }, { "ShellOrthotropy", slab.SlabPart.ShellOrthotropy }, { "EdgeCurves", slab.SlabPart.Region.ToDynamoCurves() }, { "EdgeConnections", slab.SlabPart.GetEdgeConnections() }, { "LocalX", slab.SlabPart.LocalX.ToDynamo() }, { "LocalY", slab.SlabPart.LocalY.ToDynamo() }, { "SurfaceReinforcementParameters", slab.SurfaceReinforcementParameters }, { "SurfaceReinforcement", slab.SurfaceReinforcement }, { "Identifier", slab.Name } }); }
protected override void SolveInstance(IGH_DataAccess DA) { // get input Brep surface = null; if (!DA.GetData(0, ref surface)) { return; } double thickness = 0; if (!DA.GetData(1, ref thickness)) { return; } FemDesign.Materials.Material material = null; if (!DA.GetData(2, ref material)) { return; } FemDesign.Shells.ShellEccentricity eccentricity = FemDesign.Shells.ShellEccentricity.GetDefault(); if (!DA.GetData(3, ref eccentricity)) { // pass } FemDesign.Shells.ShellOrthotropy orthotropy = FemDesign.Shells.ShellOrthotropy.GetDefault(); if (!DA.GetData(4, ref orthotropy)) { // pass } FemDesign.Shells.EdgeConnection edgeConnection = FemDesign.Shells.EdgeConnection.GetRigid(); if (!DA.GetData(5, ref edgeConnection)) { // pass } Rhino.Geometry.Vector3d x = Vector3d.Zero; if (!DA.GetData(6, ref x)) { // pass } Rhino.Geometry.Vector3d z = Vector3d.Zero; if (!DA.GetData(7, ref z)) { // pass } string identifier = "P"; if (!DA.GetData(8, ref identifier)) { // pass } if (surface == null || material == null || eccentricity == null || orthotropy == null || edgeConnection == null || identifier == null) { return; } // FemDesign.Geometry.Region region = surface.FromRhino(); // List <FemDesign.Shells.Thickness> thicknessObj = new List <FemDesign.Shells.Thickness>(); thicknessObj.Add(new FemDesign.Shells.Thickness(region.CoordinateSystem.Origin, thickness)); // FemDesign.Shells.Slab obj = FemDesign.Shells.Slab.Plate(identifier, material, region, edgeConnection, eccentricity, orthotropy, thicknessObj); // set local x-axis if (!x.Equals(Vector3d.Zero)) { obj.SlabPart.LocalX = x.FromRhino(); } // set local z-axis if (!z.Equals(Vector3d.Zero)) { obj.SlabPart.LocalZ = z.FromRhino(); } // return DA.SetData(0, obj); }
protected override void SolveInstance(IGH_DataAccess DA) { // get input Brep surface = null; if (!DA.GetData(0, ref surface)) { return; } List <FemDesign.Shells.Thickness> thickness = new List <FemDesign.Shells.Thickness>(); if (!DA.GetDataList(1, thickness)) { return; } FemDesign.Materials.Material material = null; if (!DA.GetData(2, ref material)) { return; } FemDesign.Shells.ShellEccentricity eccentricity = FemDesign.Shells.ShellEccentricity.GetDefault(); if (!DA.GetData(3, ref eccentricity)) { // pass } FemDesign.Shells.ShellOrthotropy orthotropy = FemDesign.Shells.ShellOrthotropy.GetDefault(); if (!DA.GetData(4, ref orthotropy)) { // pass } FemDesign.Shells.EdgeConnection edgeConnection = FemDesign.Shells.EdgeConnection.GetRigid(); if (!DA.GetData(5, ref edgeConnection)) { // pass } Rhino.Geometry.Vector3d x = Vector3d.Zero; if (!DA.GetData(6, ref x)) { // pass } Rhino.Geometry.Vector3d z = Vector3d.Zero; if (!DA.GetData(7, ref z)) { // pass } string identifier = "W"; if (!DA.GetData(8, ref identifier)) { // pass } if (surface == null || thickness == null || material == null || eccentricity == null || orthotropy == null || edgeConnection == null) { return; } if (thickness.Count != 2) { throw new System.ArgumentException("Thickness must contain exactly 2 items."); } // convert geometry FemDesign.Geometry.Region region = surface.FromRhino(); // FemDesign.Shells.Slab obj = FemDesign.Shells.Slab.Wall(identifier, material, region, edgeConnection, eccentricity, orthotropy, thickness); // set local x-axis if (!x.Equals(Vector3d.Zero)) { obj.SlabPart.LocalX = x.FromRhino(); } // set local z-axis if (!z.Equals(Vector3d.Zero)) { obj.SlabPart.LocalZ = z.FromRhino(); } // return DA.SetData(0, obj); }