예제 #1
0
        private void EditarTendenciaATodosLosNervios()
        {
            int i = 0;

            foreach (cTendencia tendencia in TendenciasCreadasI)
            {
                cTendencia         TI = tendencia;
                cTendencia         TS = TendenciasCreadasS[i];
                cTendencia_Estribo TE = Tendencia_Estribos[i];
                foreach (cNervio Nervio in F_Base.Proyecto.Edificio.PisoSelect.Nervios)
                {
                    cTendencia         TIN = Nervio.Tendencia_Refuerzos.TendenciasInferior.Find(x => x.ID == TI.ID);
                    cTendencia         TSN = Nervio.Tendencia_Refuerzos.TendenciasSuperior.Find(x => x.ID == TS.ID);
                    cTendencia_Estribo TEN = Nervio.Tendencia_Refuerzos.TendenciasEstribos.Find(x => x.ID == TE.ID);
                    TI.Tendencia_Refuerzo_Origen.NombreNervioOrigen = Nervio.Nombre;
                    TS.Tendencia_Refuerzo_Origen.NombreNervioOrigen = Nervio.Nombre;
                    if (TIN != null)
                    {
                        TIN.MaximaLongitud          = TI.MaximaLongitud;
                        TIN.MinimaLongitud          = TI.MinimaLongitud;
                        TIN.CuantiaMinima           = TI.CuantiaMinima;
                        TIN.BarrasAEmplearAdicional = cFunctionsProgram.DeepCloneFast(TI.BarrasAEmplearAdicional);
                        TIN.BarrasAEmplearBase      = cFunctionsProgram.DeepCloneFast(TI.BarrasAEmplearBase);
                    }
                    else
                    {
                        Nervio.Tendencia_Refuerzos.TendenciasInferior.Add(cFunctionsProgram.DeepCloneFast(TI));
                    }
                    if (TSN != null)
                    {
                        TSN.MinimaLongitud          = TS.MinimaLongitud;
                        TSN.MaximaLongitud          = TS.MaximaLongitud;
                        TSN.CuantiaMinima           = TS.CuantiaMinima;
                        TSN.BarrasAEmplearAdicional = cFunctionsProgram.DeepCloneFast(TS.BarrasAEmplearAdicional);
                        TSN.BarrasAEmplearBase      = cFunctionsProgram.DeepCloneFast(TS.BarrasAEmplearBase);
                    }
                    else
                    {
                        Nervio.Tendencia_Refuerzos.TendenciasSuperior.Add(cFunctionsProgram.DeepCloneFast(TS));
                    }

                    if (TEN == null)
                    {
                        Nervio.Tendencia_Refuerzos.TendenciasEstribos.Add(cFunctionsProgram.DeepCloneFast(TE));
                    }

                    Nervio.AsignarMaximaLongitudTendencias();
                }

                i++;
            }


            //int ID = F_Base.Proyecto.Edificio.PisoSelect.NervioSelect.Tendencia_Refuerzos.TendenciasInferior.Max(x => x.ID);
            //foreach (cNervio Nervio in F_Base.Proyecto.Edificio.PisoSelect.Nervios)
            //{
            //    cTendencia TI = cFunctionsProgram.DeepClone(F_Base.Proyecto.Edificio.PisoSelect.NervioSelect.Tendencia_Refuerzos.TendenciasInferior.Find(x => x.ID == ID));
            //    cTendencia TS = cFunctionsProgram.DeepClone(F_Base.Proyecto.Edificio.PisoSelect.NervioSelect.Tendencia_Refuerzos.TendenciasSuperior.Find(x => x.ID == ID));
            //    TI.ID += 1; TI.Nombre = "Tendencia " + ID;
            //    TS.ID += 1; TS.Nombre = "Tendencia " + ID;
            //    TI.LimpiarTendencia(); TS.LimpiarTendencia();
            //    TI.Tendencia_Refuerzo_Origen.NombreNervioOrigen = Nervio.Nombre;
            //    TS.Tendencia_Refuerzo_Origen.NombreNervioOrigen = Nervio.Nombre;
            //    Nervio.Tendencia_Refuerzos.TendenciasInferior.Add(TI);
            //    Nervio.Tendencia_Refuerzos.TendenciasSuperior.Add(TS);
            //    Nervio.AsignarMaximaLongitudTendencias();
            //}
        }