コード例 #1
0
        public HndzFrameSingleBay3D(string name, string description, /*float ridgeHeight,*/ double length, double baySpacing, double purlinSpacing,
                                    HndzLocationEnum location, HndzRoofSlopeEnum roofSlope, HndzRoofAccessibilityEnum roofAccessibiity,
                                    HndzBuildingEnclosingEnum buildingEnclosing, HndzImportanceFactorEnum importanceFactor,
                                    ICollection <HndzFrameSingleBay2D> frames2D, ICollection <HndzPurlinStandrdCase> purlins,
                                    ICollection <HndzGuirt> girts, HndzStorey storey = null) : base(name, description, location, roofSlope, roofAccessibiity,
                                                                                                    buildingEnclosing, importanceFactor, length, baySpacing, purlinSpacing, 0, 0, storey)
        {
            Type     = HndzFrameTypeEnum.ClearSpan;
            Frames2D = frames2D;
            Purlins  = purlins;
            Girts    = girts;
            if (Frames2D != null)
            {
                HndzFrameSingleBay2D anyFrame = Frames2D.ToArray()[0];

                Point3d lowerLeft = anyFrame.LeftColumn.ExtrusionLine.baseNode.Point;
                //Point3d upperLeft = anyFrame.LeftColumn.ExtrusionLine.EndNode.Point;

                Point3d lowerRight = anyFrame.RightColumn.ExtrusionLine.baseNode.Point;
                //Point3d upperRight = anyFrame.RightColumn.ExtrusionLine.EndNode.Point;

                EaveHeight = anyFrame.RightColumn.ExtrusionLine.RhinoLine.Length;
                Width      = new Line(lowerLeft, lowerRight).Length;
            }
        }
コード例 #2
0
 public HndzFloor(Double thickness, HndzProfile profile, HndzStorey storey = null, Double baseOffset = 0) :
     this(null, profile, storey, baseOffset)
 {
     FloorThickness = thickness;
     ExtrusionLine  = new HndzLine(new Point3d(profile.Centroid.X, profile.Centroid.Y, storey.Elevation - FloorThickness + baseOffset),
                                   new Point3d(profile.Centroid.X, profile.Centroid.Y, storey.Elevation + baseOffset));
 }
コード例 #3
0
 public HndzCurtainWallStandardCase(HndzStorey storey, Double baseOffset = 0, Line baseLine        = default(Line),
                                    Double unconnectedHeight             = 0, Double wallThickness = 0, ICollection <HndzWallOpening> wallOpenings = null) :
     this(HndzResources.DefaultName, HndzResources.DefaultDescription,
          storey, baseOffset, baseLine, unconnectedHeight,
          wallThickness, wallOpenings)
 {
 }
コード例 #4
0
ファイル: HndzWallArc.cs プロジェクト: ITI-CEI36/Handazteel
 public HndzWallArc(String name, String description, HndzStorey storey, Double baseOffset = 0,
                    Arc baseArc = default(Arc), Double unconnectedHeight = 0, Double wallThickness = 0,
                    ICollection <HndzWallOpening> wallOpenings = null) :
     base(name, description, unconnectedHeight, wallThickness, storey, baseOffset, wallOpenings)
 {
     BaseArc = baseArc;
 }
コード例 #5
0
 public HndzBuildingElement(string name, string description, HndzStorey storey = null, Double baseOffset = 0,
                            HndzProductDiscipline discipline = HndzProductDiscipline.None) :
     base(name, description, storey)
 {
     Discipline = discipline;
     BaseOffset = baseOffset;
     //AddToAssociatedStorey();
 }
コード例 #6
0
 public HndzStairLanding(Double thickness, HndzProfile profile, HndzStorey storey, Double finishFloorThickness, Double baseOffset = 0) :
     this(null, profile, storey, baseOffset)
 {
     SlabThickness = thickness;
     ExtrusionLine = new HndzLine(new Point3d(profile.Centroid.X, profile.Centroid.Y, storey.Elevation -
                                              SlabThickness - finishFloorThickness + baseOffset),
                                  new Point3d(profile.Centroid.X, profile.Centroid.Y, storey.Elevation - finishFloorThickness + baseOffset));
 }
コード例 #7
0
 public HndzFrameSingleBay3D(double length, double baySpacing, double purlinSpacing,
                             HndzLocationEnum location, HndzRoofSlopeEnum roofSlope, HndzRoofAccessibilityEnum roofAccessibiity,
                             HndzBuildingEnclosingEnum buildingEnclosing, HndzImportanceFactorEnum importanceFactor,
                             ICollection <HndzFrameSingleBay2D> frames2D, ICollection <HndzPurlinStandrdCase> purlins,
                             ICollection <HndzGuirt> girts, HndzStorey storey = null) : this(HndzResources.DefaultName, HndzResources.DefaultDescription, length,
                                                                                             baySpacing, purlinSpacing, location, roofSlope, roofAccessibiity,
                                                                                             buildingEnclosing, importanceFactor, frames2D, purlins, girts, storey)
 {
 }
コード例 #8
0
 public HndzStairFlight(string name, string description, HndzStorey baseStorey, int numberOfRisers,
                        int numberOfTreads, double riserHeight, double treadLength, HndzProfile profile)
     : base(name, description, baseStorey)
 {
     Profile        = profile;
     NumberOfRisers = numberOfRisers;
     NumberOfTreads = numberOfTreads;
     RiserHeight    = riserHeight;
     TreadLength    = treadLength;
 }
コード例 #9
0
        public HndzCurtainWallStandardCase(String name, String description, HndzStorey storey, Double baseOffset = 0,
                                           Line baseLine = default(Line), Double unconnectedHeight = 0, Double wallThickness = 0, ICollection <HndzWallOpening> wallOpenings = null) :
            base(name, description, unconnectedHeight, wallThickness, storey, baseOffset, wallOpenings)
        {
            BaseLine = baseLine;
            Point3d StartPoint = new Point3d(BaseLine.PointAt(.5).X, BaseLine.PointAt(.5).Y, BaseOffset);
            Point3d EndPoint   = new Point3d(StartPoint.X, StartPoint.Y, unconnectedHeight + BaseOffset);

            ExtrusionLine = new HndzLine(new Line(StartPoint, EndPoint));
        }
コード例 #10
0
 protected HndzWall(string name, string description, HndzLine extrusionLine, Double wallThickness,
                    HndzStorey storey = null, double baseOffset = 0, ICollection <HndzWallOpening> wallOpenings = null) :
     base(name, description, extrusionLine, storey, baseOffset)
 {
     if (ExtrusionLine != null)
     {
         UnconnectedHeight = ExtrusionLine.RhinoLine.Length;
     }
     WallThickness = wallThickness;
 }
コード例 #11
0
        public HndzCurtainWallArc(String name, String description, HndzStorey storey, Double baseOffset = 0,
                                  Arc baseArc = default(Arc), Double unconnectedHeight = 0, Double wallThickness = 0,
                                  ICollection <HndzWallOpening> wallOpenings = null) :
            base(name, description, unconnectedHeight, wallThickness, storey, baseOffset, wallOpenings)
        {
            //TODO: MS: convert this into hndzProfile
            BaseArc = baseArc;
            Point3d mid = GetPointOnArc(BaseArc, .5);

            Point3d StartPoint = new Point3d(mid.X, mid.Y, BaseOffset);
            Point3d EndPoint   = new Point3d(mid.X, mid.Y, unconnectedHeight + BaseOffset);

            //Point3d StartPoint = new Point3d(BaseArc.MidPoint.X, BaseArc.MidPoint.Y, BaseOffset);
            //Point3d EndPoint = new Point3d(StartPoint.X, StartPoint.Y, unconnectedHeight + BaseOffset);
            ExtrusionLine = new HndzLine(new Line(StartPoint, EndPoint));
        }
コード例 #12
0
        public HndzWallStandardCase(String name, String description, HndzStorey storey, Double baseOffset = 0,
                                    Line baseLine = default(Line), Double unconnectedHeight = 0, Double wallThickness = 0, ICollection <HndzWallOpening> wallOpenings = null) :
            base(name, description, unconnectedHeight, wallThickness, storey, baseOffset, wallOpenings)
        {
            BaseLine = baseLine;
            //MS:
            //Step1: Create HndzProfile
            var myWallRec         = new Rectangle3d(Plane.WorldXY, wallThickness, BaseLine.Length);
            var orientationVector = new Vector2d(BaseLine.UnitTangent.X, BaseLine.UnitTangent.Y);
            var myHndzProfile     = new HndzRectangularProfile(myWallRec, orientationVector);

            Profile = myHndzProfile;

            //Step2: Create Extrusion Line
            Point3d StartPoint = new Point3d(BaseLine.PointAt(.5).X, BaseLine.PointAt(.5).Y, BaseOffset + storey.Elevation);
            Point3d EndPoint   = new Point3d(StartPoint.X, StartPoint.Y, unconnectedHeight + BaseOffset + storey.Elevation);

            ExtrusionLine = new HndzLine(new Line(StartPoint, EndPoint));
        }
コード例 #13
0
 public HndzFrameMultiSpan13D(double length, double baySpacing, double width, double eaveHeight, int v, HndzLocationEnum selectedIndex1, HndzRoofSlopeEnum selectedIndex2, HndzRoofAccessibilityEnum selectedIndex3, HndzBuildingEnclosingEnum partiallyEnclosed, HndzImportanceFactorEnum iI, object p1, object p2, object p3, object p4, object p5, HndzStorey storey)
 {
     Length                 = length;
     this.baySpacing        = baySpacing;
     Width                  = width;
     EaveHeight             = eaveHeight;
     this.v                 = v;
     this.selectedIndex1    = selectedIndex1;
     this.selectedIndex2    = selectedIndex2;
     this.selectedIndex3    = selectedIndex3;
     this.partiallyEnclosed = partiallyEnclosed;
     this.iI                = iI;
     this.p1                = p1;
     this.p2                = p2;
     this.p3                = p3;
     this.p4                = p4;
     this.p5                = p5;
     this.storey            = storey;
 }
コード例 #14
0
 protected HndzPurlin(String name, String description, HndzLine extrusionLine, HndzProfile profile, HndzStorey storey = null,
                      double baseOffset = 0, Vector3d direction = default(Vector3d)) :
     base(name, description, extrusionLine, profile, storey, baseOffset)
 {
 }
コード例 #15
0
 public HndzCurtainWallArc(HndzStorey storey, Double baseOffset = 0,
                           Arc baseArc = default(Arc), Double unconnectedHeight = 0, Double wallThickness = 0,
                           ICollection <HndzWallOpening> wallOpenings = null) :
     this(HndzResources.DefaultName, HndzResources.DefaultDescription, storey, baseOffset, baseArc, unconnectedHeight, wallThickness, wallOpenings)
 {
 }
コード例 #16
0
 public HndzFloor(HndzLine extrusionLine, HndzProfile profile, HndzStorey storey = null, Double baseOffset = 0) :
     this(HndzResources.DefaultName, HndzResources.DefaultDescription, profile, extrusionLine, storey, baseOffset)
 {
 }
コード例 #17
0
 public HndzFrameMonoSlope2D(string name, string description, HndzColumn rightColumn, HndzBeam beam, HndzSupport rightSupport, HndzColumn leftColumn, HndzSupport leftSupport, HndzStorey storey = null) : base(name, description, storey)
 {
     RightColumn  = rightColumn;
     Beam         = beam;
     RightSupport = rightSupport;
     LeftColumn   = leftColumn;
     LeftSupport  = leftSupport;
 }
コード例 #18
0
 public HndzFrameSingleBay3D(double length, double baySpacing, double width, double eaveHeight, double purlinSpacing,
                             HndzLocationEnum location, HndzRoofSlopeEnum roofSlope, HndzRoofAccessibilityEnum roofAccessibiity,
                             HndzBuildingEnclosingEnum buildingEnclosing, HndzImportanceFactorEnum importanceFactor,
                             SectionI columnsStartSection = null, SectionI columnsEndSection    = null, SectionI beamsStartSection = null,
                             SectionI beamsEndSection     = null, SectionChannel purlinsSection = null, HndzStorey storey          = null) :
     this(HndzResources.DefaultName, HndzResources.DefaultDescription, length, baySpacing, width, eaveHeight,
          purlinSpacing, location, roofSlope, roofAccessibiity, buildingEnclosing, importanceFactor,
          columnsStartSection, columnsEndSection, beamsStartSection, beamsEndSection, purlinsSection, storey)
 {
 }
コード例 #19
0
 public HndzFloor(String name, String description, HndzProfile profile, HndzLine extrusionLine, HndzStorey storey = null, Double baseOffset = 0) :
     base(name, description, extrusionLine, storey, baseOffset)
 {
     Profile = profile;
 }
コード例 #20
0
 public HndzStraightStairFlight(string name, string description, HndzStorey baseStorey, double width, double length,
                                Point3d origin, int numberOfRisers, int numberOfTreads, double riserHeight, double treadLength)
     : base(name, description, baseStorey, numberOfRisers, numberOfTreads, riserHeight, treadLength,
            new HndzRectangularProfile(new Rectangle3d(new Plane(origin, Vector3d.ZAxis), width, length)))
 {
 }
コード例 #21
0
 public HndzFrameSingleBay3D(string name, string description, double length,
                             double baySpacing, double width, double eaveHeight, double purlinSpacing,
                             HndzLocationEnum location, HndzRoofSlopeEnum roofSlope, HndzRoofAccessibilityEnum roofAccessibiity,
                             HndzBuildingEnclosingEnum buildingEnclosing, HndzImportanceFactorEnum importanceFactor,
                             SectionI columnsStartSection = null, SectionI columnsEndSection    = null, SectionI beamsStartSection = null,
                             SectionI beamsEndSection     = null, SectionChannel purlinsSection = null, HndzStorey storey          = null) :
     base(name, description, location, roofSlope, roofAccessibiity, buildingEnclosing, importanceFactor, length,
          baySpacing, purlinSpacing, width, eaveHeight, storey)
 {
     AssemblePEB(columnsStartSection, columnsEndSection, beamsStartSection, beamsEndSection, purlinsSection);
 }
コード例 #22
0
 }                                     // ana msh m7tagha
 #endregion
 #region Constructors
 protected HndzColumn(String name, String description, HndzLine extrusionLine, HndzProfile profile, HndzStorey storey = null, Double baseOffset = 0,
                      HndzProductDiscipline discipline = HndzProductDiscipline.Structural) :
     base(name, description, extrusionLine, profile, storey, baseOffset)
 {
     UnconnectedHeight = extrusionLine.RhinoLine.Length;
 }
コード例 #23
0
ファイル: HndzFrame2D.cs プロジェクト: A-Shawqi/HANDAZteel
 protected HndzFrame2D(string name, string description, HndzStorey storey = null,
                       double baseOffset = 0) :
     base(name, description, storey /*, baseOffset,HndzProductDiscipline.Structural*/)
 {
 }
コード例 #24
0
ファイル: HndzBeam.cs プロジェクト: A-Shawqi/HANDAZteel
 protected HndzBeam(String name, String description, HndzLine extrusionLine, HndzProfile profile, HndzStorey storey = null, double baseOffset = 0) :
     base(name, description, extrusionLine, profile, storey, baseOffset)
 {
 }
コード例 #25
0
        private HndzFrameMonoSlope3D(string name, string description, double length,
                                     double baySpacing, double width, double eaveHeight, double purlinSpacing,
                                     HndzLocationEnum location, HndzRoofSlopeEnum roofSlope, HndzRoofAccessibilityEnum roofAccessibiity,
                                     HndzBuildingEnclosingEnum buildingEnclosing, HndzImportanceFactorEnum importanceFactor,
                                     SectionI columnsStartSection = null, SectionI columnsEndSection    = null, SectionI beamsStartSection = null,
                                     SectionI beamsEndSection     = null, SectionChannel purlinsSection = null, HndzStorey storey          = null) :
            base(name, description, location, roofSlope, roofAccessibiity, buildingEnclosing, importanceFactor, length,
                 baySpacing, purlinSpacing, width, eaveHeight, storey)
        {
            switch (RoofSlope)
            {
            case HndzRoofSlopeEnum.From1To5:
                RidgeHeight = EaveHeight + 0.2 * Width;
                break;

            case HndzRoofSlopeEnum.From1To10:
                RidgeHeight = EaveHeight + 0.1 * Width;
                break;

            case HndzRoofSlopeEnum.From1To20:
                RidgeHeight = EaveHeight + 0.05 * Width;
                break;
            }
            AssemblePEB(columnsStartSection, columnsEndSection, beamsStartSection, beamsEndSection, purlinsSection);
            //throw new NotImplementedException("sorry,this will be fixed in the next version");
        }
コード例 #26
0
 /// <summary>
 /// main constructor
 /// </summary>
 /// <param name="profile">constant profile along column extrude direction</param>
 /// <param name="name">name for the column</param>
 /// <param name="description">description for the column</param>
 /// <param name="height">column actual height(in Z-direction)</param>
 /// <param name="storey">storey which contains the column base elevation</param>
 /// <param name="topLevel">storey which intersects with column top elevation</param>
 /// <param name="baseOffset">offset from base</param>
 /// <param name="topOffset">offset from top</param>
 public HndzBracingStandrdCase(string name, string description, HndzProfile profile, HndzLine extrusionLine, HndzStorey storey = null,
                               double baseOffset = 0) :
     base(name, description, extrusionLine, profile, storey, baseOffset)
 {
     Profile = profile;
 }
コード例 #27
0
 /// <summary>
 /// our default constructor
 /// </summary>
 /// <param name="profile">constant profile along column extrude direction</param>
 /// <param name="height">column actual height(in Z-direction)</param>
 /// <param name="storey">storey which contains the column base elevation</param>
 /// <param name="topLevel">storey which intersects with column top elevation</param>
 /// <param name="baseOffset">offset from base</param>
 /// <param name="topOffset">offset from top</param>
 public HndzBracingStandrdCase(HndzProfile profile, HndzLine extrusionLine, HndzStorey storey = null, HndzStorey topLevel = null,
                               double baseOffset = 0, double topOffset = 0) :
     this(HndzResources.DefaultName, HndzResources.DefaultDescription, profile, extrusionLine, storey, baseOffset)
 {
 }
コード例 #28
0
 protected HndzFrame2D(string name, string description, HndzStorey storey = null) :
     base(name, description, storey)
 {
 }
コード例 #29
0
 protected HndzWall(string name, string description, Double unconnectedHeight, Double wallThickness,
                    HndzStorey storey = null, double baseOffset = 0, ICollection <HndzWallOpening> wallOpenings = null) :
     this(name, description, new HndzLine(new Line(new Point3d(), new Vector3d(0, 0, unconnectedHeight))),
          wallThickness, storey, baseOffset)
 {
 }
コード例 #30
0
 public HndzFrameMultiGable2D(string name, string description, HndzColumn rightColumn, HndzSupport rightSupport, HndzColumn middleColumn, HndzColumn leftColumn, HndzSupport leftSupport, HndzBeam leftBeamLeft,
                              HndzBeam rightBeamLeft, HndzBeam leftBeamRight, HndzBeam rightBeamRight, HndzStorey storey = null) : base(name, description, storey)
 {
     RightColumn    = rightColumn;
     RightSupport   = rightSupport;
     MiddleColumn   = middleColumn;
     LeftColumn     = leftColumn;
     LeftSupport    = leftSupport;
     LeftBeamLeft   = leftBeamLeft;
     RightBeamLeft  = rightBeamLeft;
     LeftBeamRight  = leftBeamRight;
     RightBeamRight = rightBeamRight;
 }