Módulo TQSEXEC

Os objetos do tipo TQSExec permitem a execução do gerenciador TQS e alguns de seus comandos, como o processamento global. É possível montar uma fila de edifícios a processar e processá-los forma automática.

Modo de funcionamento

A execução de comandos no gerenciador é feita pelo objeto TQSExec.Job. Você entra tarefas tipo TQSExec.Task na fila, e no final o comando Job.Execute chama o gerenciador e executa os comandos.

Definição de tarefas

As tarefas a serem realizadas são objetos derivados da classe TQSExec.Task. Cada objeto derivado define uma tarefa diferente. A tarefa é definida na construção do objeto.

Pasta atual e a classe TaskFolder

Alguns comandos são realizados a partir de uma pasta determinada. Use este objeto para posicionar o gerenciador na pasta desejada.

TQSExec.TaskFolder (buildingName, folderType=FOLDER_FRAMES,

folderName="", subFolder=SUBFOLDER_NONE)

Define a pasta atual do edifício

buildingName Nome do edifício

folderType Pasta tipo FOLDER_xxx

folderName Nome da pasta (string) para FOLDER_FLOORS

subFolder Subpasta tipo SUBFOLDER_xxxx para FOLDER_FLOORS

As constantes que podem ser usadas em folderType são:

TaskFolder.FOLDER_FRAMES

Pasta Espacial

TaskFolder.FOLDER_COLUMNS

Pasta Pilares

TaskFolder.FOLDER_FOUNDATIONS

Pasta Fundações

TaskFolder.FOLDER_FLOORS

Pasta do pavimento

TaskFolder.FOLDER_GENERAL

Pasta Gerais

TaskFolder.FOLDER_INFRASTRUCTURE

Pasta Infraestrutura

As constantes que podem ser usadas em subFolder são:

TaskFolder.SUBFOLDER_NONE

Pasta do pavimento

TaskFolder.SUBFOLDER_BEAMS

Subpasta vigas, quando folderName = TaskFolder.FOLDER_FLOORS

TaskFolder.SUBFOLDER_STAIRS

Subpasta escadas, quando folderName = TaskFolder.FOLDER_FLOORS

Pasta raiz do edifício

TQSExec.TaskRootFolder(rootfolder)

Define a pasta raiz de edifícios

Processamento global

Esta é a principal tarefa definida, com processamento global de toda a estrutura. O preenchimento de dados é semelhante à janela de dados do gerenciador.

TQSExec.TaskGlobalProc(floorPlan=2, floorDraw=0, slabs=0,

beams=1, columnsData=1, columns=0, columnsReport=1,

gridModel=1, gridDraw=1, gridExtr=1, gridAnalysis=1,

gridBeamsTrnsf=0, gridSlabsTrnsf=1, gridNonLinear=0,

frameModel=1, frameAnalysis=1, frameBeamsTrnsf=1,

frameColumnsTrnsf=1, foundations=0, stairs=0,

fire=0, precastPhases=0)

Processamento global conforme parâmetros escolhidos

FloorPlan (0) Não (1) Extrair plantas (2) Extrair e processar

floorDraw (0) Não (1) Desenhar formas

slabs (0) Não (1) Esforços (2) Esforços e desenho

beams (0) Não (1) Esforços (2) Dimensionamento, detalh (3) E desenho

columnsData (0) Não (1) gravação de dados de pilares

columns (0) Não (1) Dimensionamento, detalhamento (2) E desenho

columnsReport (0) Não (1) Relatório geral de pilares

gridModel (0) Não (1) Geração do modelo

gridDraw (0) Não (1) Desenho de dados de grelha

gridExtr (0) Não (1) Extração do desenho

gridAnalysis (0) Não (1) Análise de esforços

gridBeamsTrnsf (0) Não (1) Transferência de esforços para vigas

gridSlabsTrnsf (0) Não (1) Transferência de esforços para lajes

gridNonLinear (0) Não (1) Análise não linear

frameModel (0) Não (1) Geração do modelo

frameAnalysis (0) Não (1) Análise de esforços

frameBeamsTrnsf (0) Não (1) Transferência de esforços para vigas

frameColumnsTrnsf (0) Não (1) Transferência de esforços para pilares

foundations (0) Não (1) Dimensonamento, detalhamento (2) E desenho

stairs (0) Não (1) Dimensonamento, detalhamento e desenho

fire (0) Não (1) Verificação à incêndio

precastPhases (0) Não (1) Pré-moldados: Todas as etapas construtivas

Planta de cargas

Entre este objeto na lista de tarefas para gerar a planta de cargas

TQSExec. TaskLoadsReport()

Planta de cargas com as últimas combinações fornecidas

Desenho de lajes

Além dos desenhos de flexão positiva e negativa, punção e cisalhamento, este comando permite também gerar as faixas de esforços correspondentes.

TQSExec.TaskSlabDrawings(rebartop=1, rebarbot=1,rebarpunch=1,

rebarshear=1, forcestop=1, forcesbot=1, forcespunch=1, forcesshear=1)

Desenhos de lajes

rebartop (0) Não (1) Ferros positivos

rebarbot (0) Não (1) Ferros negativos

rebarpunch (0) Não (1) Ferros de punção

rebarshear (0) Não (1) Ferros de cisalhamento

forcestop (0) Não (1) Faixas positivos

forcesbot (0) Não (1) Faixas negativos

forcespunch (0) Não (1) Faixas de punção

forcesshear (0) Não (1) Faixas de cisalhamento

Desenho de lajes treliçadas

Geração dos 4 desenhos típicos no pós-processamento de lajes treliçadas. Exige que as armaduras tenham sido previamente calculadas.

TQSExec.TaskLatticeSlabs(latticeList=1, latticeBeams=1,

rebarList=1, fillingList=1)

Desenhos de lajes treliçadas

latticeList (0) Não (1) Tabela de vigotas treliçadas

latticeBeams (0) Não (1) Planta de fabricação de vigotas

rebarList (0) Não (1) Tabela de ferros complementares

fillingList (0) Não (1) Tabela de enchimentos

Desenho de lajes mistas nervuradas

Defina primeiro a pasta antes de acionar o desenho de lajes mistas nervuradas.

TQSExec.TaskCompositeSlabs()

Desenhos de lajes mistas nervuradas

Tabela de ferros com todos os desenhos de armação

Este comando não existe diretamente no gerenciador. Ele cria uma planta na pasta GERAIS com todos os desenhos de armação de todas as pastas do edifício, e gera uma tabela de ferros única. Esta tabela é interessante para avaliação da quantidade total de aço no edifício e para comparações de quantitativos.

TQSExec.TaskRebarSchedule()

Tabela de ferros com todos os desenhos de armadura do edifício

Processamento de escadas

Caso o dimensionamento, detalhamento e desenho de escadas não tenha sido feito no processamento global, pode ser feito aqui. O processamento é de um único piso, que precisa ser definido antes na pasta de ESCADAS.

TQSExec.TaskStairs()

Dimensionamento, detalhamento e desenho de escadas

Desenho de formas

Gera os desenhos típicos de formas de um pavimento. A pasta atual precisa ser definida previamente, a menos dos cortes do edifício, que são sempre gerados na pasta espacial.

TQSExec.TaskFloorPlanDrawings(floor=1, columns=1, slabs=1,

slabsDims=1, beams=1, loads=1, sections=1)

Desenho de formas

floor (0) Não (1) Planta de formas

columns (0) Não (1) Planta de pilares

slabs (0) Não (1) Verificação de nós de lajes

slabsDims (0) Não (1) Verificação de medidas de lajes

beams (0) Não (1) Nós e cargas em vigas

loads (0) Não (1) Cargas em lajes

sections (0) Não (1) Cortes do edifício

Desenhos de pré-moldados

Adicione esta tarefa para gerar os desenhos de formas de pré-moldados

TQSExec.TaskPreCastDrawings()

Desenho de pré-moldados

Transferência de esforços para vigas pré-moldadas

TQSExec.TaskPreCastBeams ()

Transferência de esforços para cálculo de vigas pré-moldadas

Transferência de esforços para fundações pré-moldadas

TQSExec.TaskPreCastFoundations()

Transferência de esforços para cálculo de fundações pré-moldadas

Dimensionamento, detalhamento e desenho de pilares pré-moldados

TQSExec.TaskPreCastColumns()

Dimensionamento, detalhamento e desenho de pilares pré-moldados

Dimensionamento, detalhamento e desenho de consolos pré-moldados

TQSExec.TaskPreCastCorbels()

Dimensionamento, detalhamento e desenho de consolos pré-moldados

Quantitativos de pré-moldados

TQSExec.TaskPreCastMaterials()

Quantitativos de pré-moldados

Execução de tarefas – classe Job

A objetos da classe Job() acumulam tarefas, que são objetos derivados da classe Task(), e são executados. Cada execução carrega o gerenciador no ar, processa e depois sai do gerenciador. Você cria o objeto com:

Job = TQSExec.Job()

Entrada de uma tarefa

As tarefas são colocadas em uma fila e executadas na mesma sequência de entrada.

job.EnterTask(task)

Acumula uma tarefa da classe Task para execução

Execução das tarefas

Acione o comando job.Execute() para executar todas as tarefas.

job.Execute()

Executa os comandos acumulados, chama o TQS e sai no final

Programa de teste TSTEXEC.py para a classe TQSExec

Este programa usa como exemplo o edifício “Mod-Padrão” distribuído para teste do programa TQS. Se não estiver na sua árvore de edifícios, primeiro faça a instalação. Descompacte o modelo MODPLA.TQS, localizado na pasta USUARIO\NGE\TESTE da instalação TQS.

O programa duplica este edifício, alterando o fck (C25, C30, C35 e C40) e o método de cálculo (Modelo IV e VI), no total de 8 combinações. Cada edifício duplicado recebe um nome distinto, identificando fck e modelo estrutural.

O edifício é carregado através de um objeto TQSBuild.Building:

Building = TQSBuild.Building ()

istat = building.file.Open (nomedi)

Depois, é duplicado com alterações no nome, concreto e modelo estrutural:

nomediteste = nomedi + "_" + concrete + "_" + modeldesc

building.model.structuralModel = structuralModel

building.materials.beamConcreteStrength = concrete

building.materials.columnConcreteStrength = concrete

building.materials.foundationConcreteStrength= concrete

building.file.SaveAs (nomediteste)

Finalmente é feito o processamento global, incluindo uma tabela de ferros na pasta GERAIS:

job = TQSExec.Job ()

job.EnterTask(TQSExec.TaskFolder(nomediteste,

TQSExec.TaskFolder.FOLDER_FRAMES))

job.EnterTask(TQSExec.TaskGlobalProc(floorDraw=1,slabs=2,

beams=3, columns=2, foundations=1, stairs=1))

job.EnterTask (TQSExec.TaskRebarSchedule ())

job.Execute ()