Exemple #1
0
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            FemDesign.Reinforcement.BarReinforcement barReinf = null;
            if (!DA.GetData("LongitudinalBar", ref barReinf))
            {
                return;
            }

            if (barReinf.IsStirrups)
            {
                throw new System.ArgumentException($"Passed object {barReinf.Guid} is not a longitudinal bar reinforcement object. Did you pass a stirrups bar?");
            }
            else
            {
                DA.SetData("Guid", barReinf.Guid);
                DA.SetData("BaseBar", barReinf.BaseBar.Guid);
                DA.SetData("Wire", barReinf.Wire);
                DA.SetData("YPos", barReinf.LongitudinalBar.Position2d.X);
                DA.SetData("ZPos", barReinf.LongitudinalBar.Position2d.Y);
                DA.SetData("StartAnchorage", barReinf.LongitudinalBar.Anchorage.Start);
                DA.SetData("EndAnchorage", barReinf.LongitudinalBar.Anchorage.End);
                DA.SetData("StartMeasurement", barReinf.LongitudinalBar.Start);
                DA.SetData("EndMeasurement", barReinf.LongitudinalBar.End);
                DA.SetData("AuxBar", barReinf.LongitudinalBar.Auxiliary);
            }
        }
Exemple #2
0
        public static Reinforcement.BarReinforcement LongitudinalBarByStartEnd(Wire wire, double yPos, double zPos, double startAnchorage, double endAnchorage, double start, double end, bool auxBar)
        {
            // create longitudinal
            var pos     = new FemDesign.Geometry.FdPoint2d(yPos, zPos);
            var longBar = new FemDesign.Reinforcement.LongitudinalBar(pos, startAnchorage, endAnchorage, start, end, auxBar);

            // create bar reinforcement
            var barReinf = new FemDesign.Reinforcement.BarReinforcement(Guid.Empty, wire, longBar);

            return(barReinf);
        }
Exemple #3
0
        public static Reinforcement.BarReinforcement StirrupsByStartEnd(Wire wire, Autodesk.DesignScript.Geometry.Surface profile, double start, double end, double spacing)
        {
            // transform profile to region
            var region = Geometry.Region.FromDynamo(profile);

            // create stirrups
            var stirrups = new FemDesign.Reinforcement.Stirrups(region, start, end, spacing);

            // create bar reinforcement
            var barReinf = new FemDesign.Reinforcement.BarReinforcement(Guid.Empty, wire, stirrups);

            //
            return(barReinf);
        }
 public static Dictionary <string, object> StirrupDeconstruct(FemDesign.Reinforcement.BarReinforcement stirrups)
 {
     if (!stirrups.IsStirrups)
     {
         throw new System.ArgumentException($"Passed object {stirrups.Guid} is not a stirrup bar reinforcement object. Did you pass a longitudinal bar?");
     }
     else
     {
         return(new Dictionary <string, object>
         {
             { "Guid", stirrups.Guid },
             { "BaseBar", stirrups.BaseBar.Guid },
             { "Wire", stirrups.Wire },
             { "Profiles", stirrups.Stirrups.Regions.Select(x => x.ToDynamoSurface()) },
             { "StartMeasurement", stirrups.Stirrups.Start },
             { "EndMeasurement", stirrups.Stirrups.End },
             { "Spacing", stirrups.Stirrups.Distance }
         });
     }
 }
Exemple #5
0
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            FemDesign.Reinforcement.BarReinforcement barReinf = null;
            if (!DA.GetData("Stirrups", ref barReinf))
            {
                return;
            }

            if (!barReinf.IsStirrups)
            {
                throw new System.ArgumentException($"Passed object {barReinf.Guid} is not a stirrups bar reinforcement object. Did you pass a longitudinal bar?");
            }
            else
            {
                DA.SetData("Guid", barReinf.Guid);
                DA.SetData("BaseBar", barReinf.BaseBar.Guid);
                DA.SetData("Wire", barReinf.Wire);
                DA.SetDataList("Profiles", barReinf.Stirrups.Regions.Select(x => x.ToRhinoBrep()));
                DA.SetData("StartMeasurement", barReinf.Stirrups.Start);
                DA.SetData("EndMeasurement", barReinf.Stirrups.End);
                DA.SetData("Spacing", barReinf.Stirrups.Distance);
            }
        }
 public static Dictionary <string, object> LongitudinalBarDeconstruct(FemDesign.Reinforcement.BarReinforcement longBar)
 {
     if (longBar.IsStirrups)
     {
         throw new System.ArgumentException($"Passed object {longBar.Guid} is not a longitudinal bar reinforcement object. Did you pass a stirrups bar?");
     }
     else
     {
         return(new Dictionary <string, object>
         {
             { "Guid", longBar.Guid },
             { "BaseBar", longBar.BaseBar.Guid },
             { "Wire", longBar.Wire },
             { "YPos", longBar.LongitudinalBar.Position2d.X },
             { "ZPos", longBar.LongitudinalBar.Position2d.Y },
             { "StartAnchorage", longBar.LongitudinalBar.Anchorage.Start },
             { "EndAnchorage", longBar.LongitudinalBar.Anchorage.End },
             { "StartMeasurement", longBar.LongitudinalBar.Start },
             { "EndMeasurement", longBar.LongitudinalBar.End },
             { "AuxBar", longBar.LongitudinalBar.Auxiliary }
         });
     }
 }