/// <summary> /// Construct Slab. /// </summary> private Slab(SlabType type, string name, SlabPart slabPart, Materials.Material material) { this.EntityCreated(); this.Name = name; this.Type = type; this.SlabPart = slabPart; this.Material = material; this.End = ""; }
public static Slab Plate(string identifier, Materials.Material material, Geometry.Region region, EdgeConnection shellEdgeConnection, ShellEccentricity eccentricity, ShellOrthotropy orthotropy, List <Thickness> thickness) { Slab._plateInstance++; SlabType type = SlabType.Plate; string name = identifier + "." + Slab._plateInstance.ToString() + ".1"; SlabPart slabPart = SlabPart.Define(name, region, thickness, material, shellEdgeConnection, eccentricity, orthotropy); Slab shell = new Slab(type, name, slabPart, material); return(shell); }
/// <summary> /// Construct SlabPart with EdgeConnections. /// </summary> public static SlabPart Define(string name, Geometry.Region region, List <Thickness> thickness, Materials.Material material, EdgeConnection shellEdgeConnection, ShellEccentricity eccentricity, ShellOrthotropy orthotropy) { // add edgeConnections to region region.SetEdgeConnections(shellEdgeConnection); // construct new slabPart SlabPart slabPart = new SlabPart(name, region, thickness, material, eccentricity, orthotropy); // return return(slabPart); }
public static Slab Wall(string identifier, Materials.Material material, Geometry.Region region, EdgeConnection shellEdgeConnection, ShellEccentricity eccentricity, ShellOrthotropy orthotropy, List <Thickness> thickness) { // check if surface is vertical if (Math.Abs(region.CoordinateSystem.LocalZ.Z) > FemDesign.Tolerance.Point3d) { throw new System.ArgumentException("Wall is not vertical! Create plate instead."); } Slab._wallInstance++; SlabType type = SlabType.Wall; string name = identifier + "." + Slab._wallInstance.ToString() + ".1"; SlabPart slabPart = SlabPart.Define(name, region, thickness, material, shellEdgeConnection, eccentricity, orthotropy); Slab shell = new Slab(type, name, slabPart, material); return(shell); }