コード例 #1
0
 public FEditarP(ISeccion pseccion, string ppiso, FInterfaz_Seccion pInterfaz)
 {
     piso       = ppiso;
     FInterfaz_ = pInterfaz;
     Seccion    = pseccion;
     InitializeComponent();
 }
コード例 #2
0
        private void EditEndCell(int IndiceR, int IndiceC)
        {
            ISeccion seccioni = null;
            string   piso     = "";

            float Separacion;

            try
            {
                Separacion = Convert.ToSingle(Info_Es_Col.Rows[IndiceR].Cells["S_value"].Value);
            }
            catch
            {
                Separacion = 0;
            }

            int    NoBarra  = Convert.ToInt32(Info_Es_Col.Rows[IndiceR].Cells["NoEstribo"].Value);
            string Story    = Info_Es_Col.Rows[IndiceR].Cells[0].Value.ToString();
            int    IndiceaM = Form1.Proyecto_.ColumnaSelect.Seccions.FindIndex(x => x.Item2 == Story);

            piso     = Form1.Proyecto_.ColumnaSelect.Seccions[IndiceaM].Item2;
            seccioni = FunctionsProject.DeepClone(Form1.Proyecto_.ColumnaSelect.Seccions[IndiceaM].Item1);

            seccioni.Estribo.NoEstribo  = NoBarra;
            seccioni.Estribo.Separacion = Separacion;
            seccioni.Estribo.CalcularArea();

            CalCuantiaVol(seccioni, false, IndiceaM);

            Form1.Proyecto_.ColumnaSelect.Seccions[IndiceaM] = new Tuple <ISeccion, string>(seccioni, piso);
            Form1.Proyecto_.ColumnaSelect.CantidadEstribos(IndiceR - 1);

            CambiosDataGridView(IndiceaM);
            try { Form1.mIntefazSeccion.Get_section(true); Form1.mIntefazSeccion.Invalidate(); } catch { }
        }
コード例 #3
0
        private void CalCuantiaVol(ISeccion seccioni, bool Cambio_Data, int index)
        {
            if (Form1.Proyecto_.ColumnaSelect != null)
            {
                float FD1, FD2;

                if (Form1.Proyecto_.DMO_DES == GDE.DMO)
                {
                    FD1 = 0.20f;
                    FD2 = 0.06f;
                }
                else
                {
                    FD1 = 0.30f;
                    FD2 = 0.09f;
                }

                if (seccioni.Estribo == null)
                {
                    seccioni.Calc_vol_inex(Form1.Proyecto_.R / 100, Form1.Proyecto_.FY, Form1.Proyecto_.DMO_DES);
                }

                seccioni.Cuanti_Vol(FD1, FD2, Form1.Proyecto_.R / 100, Form1.Proyecto_.FY);

                if (Cambio_Data == true)
                {
                    CambiosDataGridView(index);
                }
            }
        }
コード例 #4
0
 public FEditarPredef(ISeccion pSeccion, FInterfaz_Seccion pInterfaz, GDE pgde)
 {
     FInterfaz_ = pInterfaz;
     Seccion    = pSeccion;
     Seccion.CalcNoDBarras();
     gde = pgde;
     InitializeComponent();
 }
コード例 #5
0
 public FEditarRef(ISeccion pseccion, string ppiso, int pindice, FInterfaz_Seccion pInterfaz)
 {
     piso       = ppiso;
     Seccion    = pseccion;
     FInterfaz_ = pInterfaz;
     index      = pindice;
     InitializeComponent();
 }
コード例 #6
0
        public ISeccion Register(ISeccion seccion)
        {
            seccion.DateAdded = DateTime.Today;

            _context.Seccions.Add((Seccion)seccion);
            _context.SaveChanges();

            return(seccion);
        }
コード例 #7
0
        public ISeccion Update(ISeccion seccion)
        {
            var seccionInDB = _context.Seccions.Single(s => s.Id == seccion.Id);

            seccionInDB.IsActive     = seccion.IsActive;
            seccionInDB.Aula         = seccion.Aula;
            seccionInDB.Nivel        = seccion.Nivel;
            seccionInDB.StudentLimit = seccion.StudentLimit;

            _context.SaveChanges();

            return(seccion);
        }
コード例 #8
0
 public EditarAyudantes(object sender)
 {
     InitializeComponent();
     if (sender is ISeccion)
     {
         iSeccion = (ISeccion)sender;
     }
     if (sender is Ibd)
     {
         ibd = (Ibd)sender;
     }
     foreach (Seccion sec in iSeccion.GetListaSecciones())
     {
         comboBoxRamo.Items.Add(sec.GetNombre());
     }
 }
コード例 #9
0
        private void Crear_Seccion(string Tipo_Seccion, float b, float h, float tw, float tf, float r)
        {
            ISeccion       N_Seccion = null;
            string         Nombre_Seccion = "";
            GDE            gde = GDE.DMO;
            List <float[]> Vertices_Temp = new List <float[]>();
            List <float[]> Vertices = new List <float[]>();
            double         Xc, Yc;
            double         Numerador, Denominador;

            MAT_CONCRETE material = new MAT_CONCRETE()
            {
                Name = "H" + tbFc.Text,
                FC   = Convert.ToSingle(tbFc.Text)
            };

            if (Radio_Dmo.Checked)
            {
                gde = GDE.DMO;
            }

            if (Radio_Des.Checked)
            {
                gde = GDE.DES;
            }

            if (Tipo_Seccion == TipodeSeccion.Rectangular.ToString())
            {
                Nombre_Seccion = $"C{b}X{h}{material.Name}";
                N_Seccion      = new CRectangulo(Nombre_Seccion, b / 100, h / 100, material, TipodeSeccion.Rectangular, null);
                N_Seccion.Calc_vol_inex(r / 100, 4220, gde);
                N_Seccion.Refuerzo_Base(r);
            }

            if (Tipo_Seccion == TipodeSeccion.Circle.ToString())
            {
                Nombre_Seccion = $"C{b}{material.Name}";
                N_Seccion      = new CCirculo(Nombre_Seccion, b / 200, new double[] { 0, 0 }, material, TipodeSeccion.Circle, null);
                N_Seccion.Calc_vol_inex(r / 100, 4220, gde);
                N_Seccion.Refuerzo_Base(r);
            }

            if (Tipo_Seccion == TipodeSeccion.Tee.ToString() | Tipo_Seccion == TipodeSeccion.L.ToString())
            {
                Nombre_Seccion = $"C{b}X{h}X{tw}X{tf}{Tipo_Seccion}{material.Name}";

                if (Tipo_Seccion == TipodeSeccion.Tee.ToString())
                {
                    Vertices_Temp.Add(new float[] { 0, h / 200 });
                    Vertices_Temp.Add(new float[] { 0, (h - tw) / 200 });
                    Vertices_Temp.Add(new float[] { (b - tf) / 400, (h - tw) / 200 });
                    Vertices_Temp.Add(new float[] { (b - tf) / 400, 0 });
                    Vertices_Temp.Add(new float[] { (b + tf) / 400, 0 });
                    Vertices_Temp.Add(new float[] { (b + tf) / 400, (h - tw) / 200 });
                    Vertices_Temp.Add(new float[] { b / 200, (h - tw) / 200 });
                    Vertices_Temp.Add(new float[] { b / 200, h / 200 });

                    Numerador   = ((b / 2) * b * tw) + ((b / 2) * (tf * (h - tw)));
                    Denominador = (b * tw) + (tf * (h - tw));

                    Xc = b / 200;

                    double y1 = (h - tw) * (h - tw) * tf / 2;
                    double y2 = (h - (tw / 2)) * b * tw;

                    Numerador   = y1 + y2;
                    Denominador = (b * tw) + (tf * (h - tw));

                    Yc = h / 200;

                    for (int i = 0; i < Vertices_Temp.Count; i++)
                    {
                        var Aux = B_Operaciones_Matricialesl.Operaciones.Traslacion(Vertices_Temp[i][0] - Xc, Vertices_Temp[i][1] - Yc, Vertices_Temp[i][0], Vertices_Temp[i][1]);
                        Vertices.Add(new float[] { (float)Aux[0], (float)Aux[1] });
                    }

                    N_Seccion = new CSD(Nombre_Seccion, b / 100, h / 100, tw / 100, tf / 100, material, TipodeSeccion.Tee, Vertices);
                }

                if (Tipo_Seccion == TipodeSeccion.L.ToString())
                {
                    Vertices_Temp.Add(new float[] { 0, 0 });
                    Vertices_Temp.Add(new float[] { b / 200, 0 });
                    Vertices_Temp.Add(new float[] { b / 200, tw / 200 });
                    Vertices_Temp.Add(new float[] { tf / 200, tw / 200 });
                    Vertices_Temp.Add(new float[] { tf / 200, h / 200 });
                    Vertices_Temp.Add(new float[] { 0, h / 200 });

                    Numerador   = ((b / 2) * b * tw) + ((tf / 2) * (tf * (h - tw)));
                    Denominador = (b * tw) + (tf * (h - tw));

                    Xc = b / 200;

                    Numerador   = ((tw / 2) * b * tw) + ((h + tf / 2) * (tf * (h - tw)));
                    Denominador = (b * tw) + (tf * (h - tw));

                    Yc = h / 200;

                    for (int i = 0; i < Vertices_Temp.Count; i++)
                    {
                        var Aux = B_Operaciones_Matricialesl.Operaciones.Traslacion(Vertices_Temp[i][0] - Xc, Vertices_Temp[i][1] - Yc, Vertices_Temp[i][0], Vertices_Temp[i][1]);
                        Vertices.Add(new float[] { (float)Aux[0], (float)Aux[1] });
                    }

                    N_Seccion = new CSD(Nombre_Seccion, b / 100, h / 100, tw / 100, tf / 100, material, TipodeSeccion.L, Vertices);
                }

                N_Seccion.Calc_vol_inex(r / 100, 4220, gde);
                N_Seccion.Refuerzo_Base(r);
            }

            if (N_Seccion != null)
            {
                if (Radio_Dmo.Checked)
                {
                    if (Form1.secciones_predef.Secciones_DMO.Exists(x => x.Equals(N_Seccion)) == false)
                    {
                        Form1.secciones_predef.Secciones_DMO.Add(N_Seccion);
                    }
                }
                if (Radio_Des.Checked)
                {
                    if (Form1.secciones_predef.Secciones_DES.Exists(x => x.Equals(N_Seccion)) == false)
                    {
                        Form1.secciones_predef.Secciones_DES.Add(N_Seccion);
                    }
                }
            }
        }