Пример #1
0
        // GET: APISAP2000
        public ActionResult Index()
        {
            ElemtosSAP subes             = Repositori.abrir_sap2000();
            cSapModel  subestacionmodelo = subes.Modelo;    //INICIALIZAR EL SAP

            Repositori.Material_default(subestacionmodelo); //crea el material default
            string Nivel_tension;

            List <Elemento> columnas = entidadesBD.Elementos.ToList();
            Elemento        col      = columnas.Find(x => x.Id == 4); // Columna > Id == 2 (fijo)

            Nivel_tension = col.NivelTension;
            Repositori.Perfiles_default(Nivel_tension, subestacionmodelo);//crea perfileria por default

            Default_T_Carga sismo_viento = new Default_T_Carga();

            sismo_viento.Cortante_basal     = 0.2;
            sismo_viento.K_exponente        = 1;
            sismo_viento.Velocidad_viento   = 103.13;
            sismo_viento.Tipo_exposicion    = 2;//modificar dado que se clasifica B=1 C=2 y D=3
            sismo_viento.Factor_importancia = 1;
            sismo_viento.Factor_topografia  = 1.06;
            sismo_viento.Factor_rafaga      = 0.996;
            sismo_viento.Factor_direccion   = 1;

            Repositori.Default_T_Cargas(subestacionmodelo, sismo_viento);
            Repositori.Mass_Source(subestacionmodelo, -1);
            Repositori.Default_combinaciones(subestacionmodelo, sismo_viento);

            Ensamble_subestacion        referencia = new Ensamble_subestacion();
            List <Ensamble_subestacion> ensamble1  = entidadesBD.Ensamble_subestacions.ToList <Ensamble_subestacion>();
            List <Ensamble_subestacion> ensamble   = ensamble1.FindAll(x => x.id_Subestacion == 1);

            foreach (Ensamble_subestacion re in ensamble)
            {
                if (re.Elemento.ToUpper().StartsWith("C"))
                {
                    Repositori.crear_columna(re, subestacionmodelo);//Crea columnas
                }
                else if (re.Elemento.ToUpper().StartsWith("V"))
                {
                    Repositori.crear_viga(re, subestacionmodelo);//Crea columnas
                }
                else if (re.Elemento.ToUpper().StartsWith("E"))
                {
                }
                else
                {
                    //TODO nada
                }
            }


            return(RedirectToAction("Index", "Elemento"));
        }
Пример #2
0
        public ActionResult abrirsap(int id_caso, int id)
        {
            ElemtosSAP nuevo = Repositori.abrir_sap2000();

            subes.Modelo = nuevo.Modelo;
            subes.Objeto = nuevo.Objeto;
            cSapModel subestacion = subes.Modelo;//INICIALIZAR EL SAP
            int       ret         = 0;

            Repositori.Materiales(subestacion);
            Repositori.tiposdecarga(subestacion, id);
            Repositori.Mass_Source(subestacion, id);
            Repositori.combinaciones(subestacion, id);
            Repositori.perfilesdefault(subestacion, id_caso);
            Repositori.perfilesagregados(subestacion, id);
            Repositori.diseño(subestacion);
            #region grupos generales
            ret = subestacion.GroupDef.SetGroup("Montante");
            ret = subestacion.GroupDef.SetGroup("Diagonal");
            ret = subestacion.GroupDef.SetGroup("Montante Viga");
            ret = subestacion.GroupDef.SetGroup("Diagonal viga");
            ret = subestacion.GroupDef.SetGroup("Montante Castillete");
            ret = subestacion.GroupDef.SetGroup("Diagonal castillete");
            ret = subestacion.GroupDef.SetGroup("Cierres");
            ret = subestacion.GroupDef.SetGroup("Apoyos");
            #endregion

            List <Ensamble_subestacion> lista = entidadesBD.Ensamble_subestacions.AsNoTracking().ToList().FindAll(x => x.id_Caso == id_caso);
            foreach (Ensamble_subestacion item in lista)
            {
                if (item.Elemento.ToUpper().StartsWith("C"))
                {
                    Repositori.crear_columna(item, subestacion);//Crea columnas
                }
                else if (item.Elemento.ToUpper().StartsWith("V"))
                {
                    Repositori.crear_viga(item, subestacion);//Crea columnas
                }
                else if (item.Elemento.ToUpper().StartsWith("E"))
                {
                }
            }

            //habilitar guardar
            subes.estadocorrerproyecto = true;
            //habilitar salir
            subes.estadosalir = true;

            return(RedirectToAction("Index", "CargaSap"));
        }