Example #1
0
        public static Frame SetLoad(Frame Frame, Load Load, bool replaceExisting = false)
        {
            // Create a new Frame using the properties of the input frame
            Frame newFrm = Frame.FromLine(Frame.BaseCurve, Frame.SecProp, Frame.Just, Frame.Angle);

            // Set Label
            newFrm.Label = String.Format("dyn_{0}", newFrm.ID.ToString());
            // Add any releases the frame already has
            newFrm.Releases = Frame.Releases;

            //Set the load in the node
            List <Load> frameLoads = new List <Load>();

            if (Frame.Loads != null)
            {
                if (replaceExisting) // if true, delete the list and add the new Load
                {
                    Frame.Loads.Clear();
                }
                else
                {
                    foreach (Load l in Frame.Loads)
                    {
                        frameLoads.Add(l);
                    }
                }
            }
            frameLoads.Add(Load);
            newFrm.Loads = frameLoads;

            return(newFrm);
        }
Example #2
0
        public static Frame SetReleases(Frame Frame, Release Release)
        {
            // Create a new Frame using the properties of the input frame
            Frame newFrm = Frame.FromLine(Frame.BaseCurve, Frame.SecProp, Frame.Just, Frame.Angle);

            // Set Label
            newFrm.Label = String.Format("dyn_{0}", Frame.ID.ToString());
            // Add any loads the frame already has
            newFrm.Loads = Frame.Loads;
            // Set the release in the node
            newFrm.Releases = Release;
            return(newFrm);
        }
Example #3
0
 /// <summary>
 /// Set the Releases of a frame
 /// </summary>
 /// <param name="Frame">Frame to set up releases of</param>
 /// <param name="Release">Use the Release node</param>
 /// <returns>The frame with the new releases</returns>
 public static Frame SetReleases(Frame Frame, Release Release)
 {
     // Create a new Frame using the properties of the input frame
     Frame newFrm = Frame.FromLine(Frame.BaseCurve, Frame.SecProp, Frame.Just, Frame.Angle);
     // Set Label
     newFrm.Label = String.Format("dyn_{0}", Frame.ID.ToString());
     // Add any loads the frame already has
     newFrm.Loads = Frame.Loads;
     // Set the release in the node
     newFrm.Releases = Release;
     return newFrm;
 }
Example #4
0
        /// <summary>
        /// Set a Load on a Frame
        /// </summary>
        /// <param name="Frame">Frame to set up loads on</param>
        /// <param name="Load">Load to apply to the frame</param>
        /// <param name="replaceExisting">Set Boolean to True to replace existing Loads on the Frame</param>
        /// <returns>The frame with the new loads(and the previous ones, if it applies)</returns>
        public static Frame SetLoad(Frame Frame, Load Load, bool replaceExisting = false)
        {
            // Create a new Frame using the properties of the input frame
            Frame newFrm = Frame.FromLine(Frame.BaseCurve, Frame.SecProp, Frame.Just, Frame.Angle);
            // Set Label
            newFrm.Label = String.Format("dyn_{0}", newFrm.ID.ToString());
            // Add any releases the frame already has
            newFrm.Releases = Frame.Releases;

            //Set the load in the node
            List<Load> frameLoads = new List<Load>();
            if (Frame.Loads != null)
            {
                if (replaceExisting) // if true, delete the list and add the new Load
                {
                    Frame.Loads.Clear();
                }
                else
                {
                    foreach (Load l in Frame.Loads)
                    {
                        frameLoads.Add(l);
                    }
                }
            }
            frameLoads.Add(Load);
            newFrm.Loads = frameLoads;

            return newFrm;
        }