Inheritance: System.Item, ICloneable
示例#1
0
        /// <summary>
        /// Relocates all the LineLoads in the oldLine to keep the position in both, the old and new lines.
        /// </summary>
        /// <param name="oldLine">The line which used to be a whole</param>
        /// <param name="newLine">The line which forms part of the old line</param>
        /// <param name="x">The dividing point</param>
        /// <param name="model">The Model object</param>
        private static void RelocateLoads(LineElement oldLine, LineElement newLine, float x, Canguro.Model.Model model)
        {
            AssignedLineLoads loads = (AssignedLineLoads)oldLine.Loads;

            foreach (LoadCase lc in model.LoadCases.Values)
            {
                IList <Canguro.Model.Load.Load> list = loads[lc];
                if (list != null)
                {
                    for (int i = 0; i < list.Count; i++)
                    {
                        bool relocated             = false;
                        Canguro.Model.Load.Load ll = list[i];
                        if (ll is ConcentratedSpanLoad)
                        {
                            relocated = RelocateConcentratedLoads(newLine.Loads, lc, x, (ConcentratedSpanLoad)ll);
                        }
                        else if (ll is DistributedSpanLoad)
                        {
                            relocated = RelocateDistributedLoads(newLine.Loads, lc, x, (DistributedSpanLoad)ll);
                        }
                        if (relocated)
                        {
                            loads[lc].RemoveAt(i);
                        }
                    }
                }
            }
        }
示例#2
0
 private void store(OleDbConnection cn, uint itemId, string loadCase, Canguro.Model.Load.Load obj)
 {
     if (obj is JointLoad)
     {
         store(cn, itemId, loadCase, (JointLoad)obj);
     }
     else if (obj is LineLoad)
     {
         store(cn, itemId, loadCase, (LineLoad)obj);
     }
     else if (obj is AreaLoad)
     {
         store(cn, itemId, loadCase, (AreaLoad)obj);
     }
 }
示例#3
0
 /// <summary>
 /// Quita una carga del LoadCase activo
 /// </summary>
 /// <param name="load"></param>
 public void Remove(Load load)
 {
     Remove(load, Model.Instance.ActiveLoadCase);
 }
示例#4
0
 /// <summary>
 /// Agrega una carga al LoadCase activo
 /// </summary>
 /// <param name="load"></param>
 public void Add(Load load)
 {
     Add(load, Model.Instance.ActiveLoadCase);
 }
 void editLoad(Load l)
 {
     holdFocus = true;
     LoadEditFrm.EditLoad(l, EditingControl.DropDown);
     holdFocus = false;
     addLoads();
 }
        void addNewLoad(Load l)
        {
            try
            {
                value.Add(l);
                ListViewItem lv = addLoadToListView(l);
                lv.Selected = true;
                updateControl();

                editLoad(l);
            }
            catch (ModelIsLockedException) { } // Ignore the change
        }
 ListViewItem addLoadToListView(Load l)
 {
     ListViewItem lv = new ListViewItem(l.ToString(), l.GetType().Name);
     lv.Tag = l;
     return lv1.Items.Add(lv);
 }