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); }
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); }
/// <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; }
/// <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; }