Inclusões e subprogramas

Documentos relacionados
Conceitos e convenções

Os blocos de desenho usados em arquitetura são mantidos em duas bibliotecas independentes:

Outros Comandos PROJETO MENSAGEM

Variáveis e macro-substituição

Codificação de programas

Para compensar, o DP permite o uso de parênteses. Na expressão anterior, para multiplicar 4 por 5 primeiro, fazemos:

Longarinas de madeira

Desenho. Níveis de desenho. Associação de cores a níveis

Eixos de locação. Alteração de cortes. Corte geral do edifício

Editor de painéis de lajes

Cargas diretas em pilares

RPU e RTE. RPU em planta. Representação

Planilha SDF. Tabelas de túnel de vento Parte I (Planilha SDF) 1. Introdução. 2. Arquivos com as tabelas do túnel de vento

Imposição de volume de concreto, área estruturada e área de formas de madeira para desenhos não padrão.

Como lançar ferro variável na V18

Menu Editar. Tipos de Tela

Apresentação dos principais comandos e critérios atuais para a geração dos desenhos de arranque dos pilares.

Como lançar ferro variável na V17

O resultado da edição gráfica é um desenho (arquivo DWG) com telas lançadas sobre uma planta de formas.

Para a criação de uma seção catalogada deveremos acessar o comando "Visualizar" - "Editor de seções

Memorial descritivo A parte de descrição do edifício existente dentro do memorial possui basicamente os dados existentes no

Editor de Lajes Protendidas

Editor de Lajes Protendidas

Calculando o edifício

Desenho de fôrmas. Geração dos Desenhos de Formas

Critérios e Representação

O processamento da forma de concreto gera desenhos de projeto e de verificação ( além dos dados necessários ao TQS-Madeira):

A barra de ferramentas de lajes nervuradas é orientada para a colocação de formas de nervuras.

Lembre-se: Estes testes garantirão que os sistemas TQS estão apresentando os resultados

Gerados os esquemas, poderemos emitir um resumo contendo apenas painéis inteiros a serem pedidos:

Lançando a Estrutura. Entrando no Modelador Estrutural. Inserindo o desenho de arquitetura

Molduras. Definição e Criação de Molduras

Madeira VISÃO GERAL DO TQS-MADEIRA

Radier (edifício COM fundação)

A marcação do item "Elementos inclinados" faz com que a definição dos Pisos Auxiliares seja liberada.

O Editor gráfico tem capacidade de visualizar todos os níveis (ou acetatos) separadamente ou juntos, à escolha do usuário:

Para iniciar o Exemplo2, proceda como foi feito no Exemplo1 (veja Cap. 8.2). Se já tiver extraído o edifício ModTela, siga a execução deste exemplo.

Exemplo 1. Entendendo o Exemplo 1

Escadas MODPLA. TQS Informá ca - Rua dos Pinheiros 706 / casa São Paulo/SP - Tel.:(011) Fax.:(011) Page: 1 of 8

Lançando no Modelador

Processamento de edifício com sapatas

Memorial Descritivo Alvenaria

Cálices. Verificação de Embutimento na Base

Edição de plantas e plotagem

Sondagens e Associação de Camadas

Arquivos de controle. Arquivo ANALIN.DAT

TQS Informá ca - Rua dos Pinheiros 706 / casa São Paulo/SP - Tel.:(011) Fax.:(011) Page: 2 of 10

Sapatas associadas (edifício SEM fundação)

Neste capítulo, será demonstrado como são dimensionadas e detalhadas as armaduras de uma laje treliçada.

Sapatas associadas (edifício COM fundação)

Pilares aceitam cargas concentradas em 5 direções globais (não aceitam momento torsor em relação ao eixo Z global).

Elementos Externos 3D

Hachuras em níveis na tabela de plotagem

Longarinas metálicas. Inserção de longarinas e barrotes

Processamento de edifício com tubulões

Operações Básicas. O Desenho é Editado na Memória. Arquivo.BAK

Efeito de variação de temperatura e retração em lajes

Desaprumo x Vento. Figura 1

Planta de cruzamentos

Blocos. Organização de Blocos

Facilidades de Desenho

Analisando os resultados

Envoltória e Equivalência de Vigas

Cotagem. Cotagens Lineares. Modo de operação

Após o processamento, é possível acessar o resultado do processamento de pré-dimensionadas através do

Modelador Estrutural. Como funciona

Exemplo 1: Identificar um Elemento no Visualizador 3D

Como verificar desenhos rapidamente?

A análise estrutural do edifício é feita considerando as diversas etapas construtivas pelas quais o edifício

Recomenda-se, fortemente, que os resultados obtidos pelo processamento sejam sempre analisados no visualizador de pórtico espacial.

O Plugin TQS-Revit 2014 pode ser baixado gratuitamente na TQS Store e é compatível com o AutoDesk Revit 2014.

Armaduras de Vigas e Lajes Inclinadas

Armação dos patamares:

Processamentos. Processamento localizado no pavimento CxDágua

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

Estacas Retangulares (Barretes)

Critérios. TQS Informá ca - Rua dos Pinheiros 706 / casa São Paulo/SP - Tel.:(011) Fax.:(011) Page: 1 of 15

Os elementos de fundações blocos sobre estacas, sapatas isoladas e tubulões, dever ser inseridos no Modelador Estrutual na base da edificação.

Bloco de fundação sem pilares associados diretamente

Curvas e Superfícies de Interação

Tabela de Cabos. TQS Informá ca - Rua dos Pinheiros 706 / casa São Paulo/SP - Tel.:(011) Fax.:(011) Page: 1 of 5

Análise estrutural. Diagramas da Grelha

Divisor de Inércia à Torção e Capacidade de Adaptação Plástica em Vigas

Entrada de dados. Criação do edifício novo

Modelos de Cálculo. Modelo Estrutural. Características dos Modelos. Modelo simplificado

CVE - Controle de Versões

Análise dos resultados

Critérios. Critérios Gerais. Gerais

Calculando e Finalizando

Sapatas isoladas (edifício SEM fundação)

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

Reservatório Elevado. Criação do Edifício

Relatórios. Relatório de Geometria e Cargas. Legenda. Critérios de projeto. Geometria das células

Porque usar um montador? Formato de uma linha de código fonte:

Definição das Fundações

Reservatório Apoiado. Criação do Edifício

3 Desktop. No Gerenciador-TQS, o Desktop é o painel central que fica encaixado na região 3 indicada na figura a seguir.

Classes e Objetos. Sintaxe de classe em Java

Comandos de controle de fluxo: if / for / while / do while.

A seguir, iremos ilustrar um exemplo prático e rápido das configurações, da montagem e edição de plantas e da plotagem em plotter, passo-a-passo.

Transcrição:

Inclusões e subprogramas Nos capítulos anteriores vimos como construir um desenho em função de parâmetros; aqui trataremos de recursos que permitem isolar a definição destes parâmetros do programa que monta o desenho, separando claramente duas classes de arquivos: uma de dados para desenho de um determinado projeto, e a outra de programas de desenho, aplicáveis a qualquer número de projetos diferentes. Inclusão de arquivos - INCLUI A forma mais simples de montagem de um programa DP independente dos parâmetros usados é o comando INCLUI. Este comando desvia a execução de um arquivo DP para outro, retornando no final do arquivo incluído para o arquivo original. Fisicamente, é como se um arquivo inteiro especificado pelo usuário fosse incluído em uma única linha de programa, com o comando INCLUI. A sintaxe do comando é: INCLUI 'arquivo' [ OPCIONAL ] O 'arquivo' especificado entre apóstrofes segue as convenções do MS-DOS; se não tiver tipo, será adotado.dp. O processamento será interrompido se o arquivo incluído não existir, a menos que a palavra OPCIONAL seja fornecida. Vamos a partir do EXEMPLO2.DP fazer o EXEMPLO3.DP. Agora, em vez de um paralelepípedo vamos desenhar dois. O primeiro terá medidas 400x150x100 e o segundo 200x200x200. O segundo paralelepípedo terá o título "SEGUNDO". O nome do primeiro arquivo de desenho será EXEMPL3A e o segundo EXEMPL3B: DEFINE ESCALA 50 DESENHO 'EXEMPL3A' N COMPRIM= 400 N LARGURA= 150 N ALTURA= 100 A TITULO= 'PARALELEPIPEDO' INCLUI 'PARALEL' DESENHO 'EXEMPL3B' N COMPRIM= 200 N LARGURA= 200 N ALTURA= 200 A TITULO= 'SEGUNDO' INCLUI 'PARALEL' No EXEMPLO3.DP não há qualquer programação de desenho, apenas a indicação do nome do desenho e dos parâmetros necessários para a sua montagem. Este arquivo funciona assim como uma entrada de dados para um programa que processa desenhos. O comando INCLUI foi usado duas vezes neste exemplo. Em cada uma delas, o arquivo PARALEL.DP foi TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 1 of 11

inteiramente lido e processado, e no final do arquivo, o controle voltou ao EXEMPLO3.DP. Faltou mostrar o conteúdo do arquivo PARALEL.DP. Literalmente, é um pedaço do EXEMPLO2.DP: PARALEL.DP:Desenho de um paralelepipedo de lados COMPRIM, LARGURA e ALTURA e titulo TITULO 1 0,0 3 1 @%COMPRIM,%LARGURA 2 X3,Y1 4 X1,Y3 POLIGONAL 1 2 3 4 1 Vista frontal 8 1 @ 0,-1.3*%_ESCALA 6 8 @ %COMPRIM,-%ALTURA 5 X8,Y6 7 X6,Y8 POLIGONAL 5 6 7 8 5 Vista lateral 9 2 @ 2.5*%_ESCALA,0 11 9 @ %ALTURA,%LARGURA 10 X11,Y9 12 X9,Y11 POLIGONAL 9 10 11 12 9 Nos auxiliares 13 5 @ -1*%_ESCALA,0 14 4 @ 0,1*%_ESCALA 15 (X1 + X3)/2,(Y1 + Y3)/2 Cotagens e titulo TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 2 of 11

COTAGEM VERTICAL 5 8 13 COTAGEM VERTICAL 1 4 13 COTAGEM HORIZONTAL 4 3 14 COTAGEM HORIZONTAL 12 11 14 TEXTO 15 CENTRADO '%TITULO' Observe que o arquivo PARALEL.DP não tem o comando, que termina o desenho. Isto aconteceu pois escolheu-se (arbitrariamente) colocar o do desenho no arquivo DP original. Arquivos de inclusão podem INCluir outros arquivos. Biblioteca de Inclusão Não é boa prática de programação misturar informações temporárias de projeto com informações permanentes, tais como programas DP. O ideal é que programas DP sejam colocados em uma pasta separada. Por exemplo, se o programa PARALEL.DP estiver na pasta \DP\INCLUI, para inclui-lo faremos: INCLUI'\DP\INCLUI\PARALEL' para facilitar a separação de arquivos em bibliotecas (onde uma pasta independente pode ser considerada uma biblioteca), existe o comando: DEFINE BIBINC 'pasta(s)' Este comando define o nome de uma ou mais pastas de pesquisa de inclusão, separados por ponto e vírgula. Suponha os comandos: DEFINE BIBINC '\DP\INCLUI;\DP\SOLIDOS' INCLUI 'PARALEL' O DP fará as seguintes operações: Incluirá o arquivo PARALEL.DP da pasta atual. Se não achar: Incluirá o arquivo PARALEL.DP da pasta \DP\INCLUI. Se não achar: Incluirá o arquivo PARALEL.DP da pasta \DP\SOLIDOS. Se não achar, emitirá mensagem de erro. Definições tais como BIBINC podem ser permanentemente definidas através do uso do arquivo de critérios do DP. Arquivo de Critérios Toda vez que um programa é executado, o DP aciona internamente o seguinte comando, antes de qualquer outro: INCLUI '%_SUPORTE\DP\INSTAL' O comando acima não é listado. Se o arquivo INSTAL.DP na pasta %_SUPORTE\DP\ for encontrado, será automaticamente incluído em todo processamento. Este arquivo normalmente é usado para declaração de parâmetros com valores diferentes do default do sistema. Por exemplo, poderia conter a definição anterior de biblioteca de inclusão: DEFINE BIBINC '\DP\INCLUI;\DP\SOLIDOS' Como resultado, o projetista deixa de se preocupar com a localização física dos programas, precisando conhecer apenas o seu nome. A TQS distribui o DP com o seguinte arquivo INSTAL.DP: ------------------- %_SUPORTE\DP\INSTAL.DP ---------------------- TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 3 of 11

DEFINE BIBDP '%_SUPORTE\DP\DPS' biblioteca DPS DEFINE BIBBLO '%_SUPORTE\BLOCOS\GERAIS' biblioteca de blocos ------------------- %_SUPORTE\DP\INSTAL.DP ---------------------- Note que após a variável %_SUPORTE não temos %% como descrito no capítulo Atribuição de variáveis alfanuméricas (pág. 61) pois o próximo caractere (\) não é um caractere válido para nome de variável. Assim sendo, o DP ignora o restante do texto para definir o nome da variável. Subprogramas DPS - Comando DP O comando INCLUI é uma forma simples de criação de programas, mas tem o inconveniente de não isolar as variáveis do programa incluído das do programa principal. Se mais de um programa for incluído para a geração de um mesmo desenho, o risco aumenta, e problemas podem aparecer sem que o projetista perceba. Subprogramas são um tipo especial de inclusão, onde os parâmetros de desenho são passados para o arquivo de inclusão e as variáveis do arquivo incluído não interferem de modo algum com outras variáveis definidas (incluindo nós). Estas variáveis são chamadas de variáveis locais. Subprogramas são codificados em arquivos com o tipo.dps. O tipo diferente de arquivo tem por objetivo separar os arquivos DP, normalmente de dados, dos arquivos DPS, usados para codificação de programas. Antes de entrarmos no conceito de subprogramas, vamos examinar o que são variáveis locais e globais. Variáveis locais e globais Variáveis locais a um programa são conhecidas exclusivamente dentro deste programa. Variáveis locais são criadas: Dentro da seção DESENHO. Duas seções diferentes de desenho não interferem uma com a outra; Dentro de subprogramas DPS. Variáveis globais são variáveis conhecidas em qualquer lugar, dentro de uma seção de DESENHO ou subprograma. Assim, uma variável global que assume um valor dentro de um desenho, pode ser usada no desenho seguinte. Um caso especial de variáveis globais são as variáveis do sistema, começadas pelo sinal "_". Estas variáveis podem ser usadas a qualquer momento em qualquer lugar. Variáveis globais podem ser declaradas no arquivo de critérios, estando então disponíveis permanentemente. Declaração de variáveis locais Variáveis locais são criadas na primeira vez que são usadas. O DP permite também, para efeito de melhor organizar um programa, que as variáveis locais sejam declaradas separadamente numa seção de programa, com a sintaxe: LOCAIS (...declaração de variáveis...) A declaração de uma variável é idêntica a um comando de atribuição: NUM nome [[=] valor ] ALF nome [[=] 'texto' ] COO nome [[=] coord ] TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 4 of 11

Variáveis declaradas podem receber um valor de inicialização. Variáveis não inicializadas recebem o valor nulo correspondente ao tipo. Um exemplo de codificação: LOCAIS N COMPRIM N LARGURA N ALTURA A TITULO = 'PARALELEPIPEDO' Declaração de variáveis globais Variáveis declaradas fora da seção DESENHO são automaticamente globais. Dentro da seção DESENHO e de subprogramas, variáveis globais podem ser declaradas na seção GLOBAIS: GLOBAIS (...declaração de variáveis...) A declaração de variáveis globais é idêntica a de locais. Existe um pequeno artifício quanto a inicialização de variáveis globais: a inicialização só é executada se a variável não estiver definida; no caso da declaração de uma variável que já existe, ela é ignorada. Seja por exemplo o arquivo.dps com os seguintes comandos: GLOBAIS ATEX= 'PRIMEIRA VEZ' TEXTO0,0 '%TEX' ATEX= 'SEGUNDA VEZ' Supondo a variável TEX indefinida, na primeira vez que este arquivo for executado, o texto 'PRIMEIRA VEZ' será colocado no desenho; na segunda vez, o texto será 'SEGUNDA VEZ', pois a variável TEX já definida não será reinicializada. Chamada de um subprograma A chamada de um subprograma em um arquivo DPS é parecida com a INClusão de um arquivo, a menos do fato que os parâmetros do subprograma são definidos durante a chamada. A sintaxe é: DP 'nome'[coord] [ANG angulo] ( parametro1=valor1, parametro2=valor2,...) Neste comando: 'nome' É o nome do subprograma com tipo.dps, entre apóstrofes. O tipo não precisa ser fornecido; coord Coordenadas opcionais de inserção do desenho gerado pelo subprograma; ANG ânguloângulo opcional, que girará todos os elementos de desenho gerados pelo subprograma. Os parâmetros do subprograma são passados após a abertura de parênteses, terminando com o fechamento de parênteses. Os parâmetros podem ser declarados na mesma linha, separados (ou não) por vírgulas ou em mais de uma linha, sem sinal de continuação. Subprogramas podem por sua vez chamar outros subprogramas. TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 5 of 11

Vamos criar o EXEMPLO4.DP a partir do EXEMPLO3.DP, mas agora, chamando o subprograma PARADP.DPS em vez de incluir o arquivo. O EXEMPLO4.DP terá seguinte forma: DEFINE ESCALA 50 DESENHO 'EXEMPL4A' DP 'PARADP' ( N COMPRIM = 400 N LARGURA = 150 N ALTURA = 100 A TITULO = 'PARALELEPIPEDO' ) DESENHO 'EXEMPL4B' DP 'PARADP' ( N COMPRIM = 200 N LARGURA = 200 N ALTURA = 200 A TITULO = 'SEGUNDO' ) A mudança em relação ao exemplo anterior foi aparentemente pequena, apenas na sintaxe. O subprograma, no entanto, tem as suas próprias variáveis locais, e não corre o risco de interferir com outros subprogramas. Os parâmetros passados ao subprograma devem ser especialmente declarados dentro do subprograma. Se forem passados parâmetros a menos, valores default serão assumidos. Declaração de Parâmetros A declaração de parâmetros dentro do subprograma é feita na seção PARAMETROS. A seção PARAMETROS deve ser declarada antes de qualquer outra seção de programa. O seu objetivo é de permitir que o DP verifique se foram declarados parâmetros que não pertençam ao subprograma. A sintaxe desta declaração é: PARAMETROS (...declaração de variáveis...) A sintaxe de declaração de cada parâmetro é idêntica à das outras seções de declaração, a menos da definição opcional de COMENTÁRIO: NUM nome [[=] valor ] [ COM 'texto'] ALF nome [[=] 'texto' ] [ COM 'texto'] COO nome [[=] coord ] [ COM 'texto'] O comentário é um texto opcional que descreve sucintamente (até 40 caracteres) o objetivo do parâmetro. Comentários são desprezados no processamento normal do DP, mas são usados pelo gerador de programas para perguntar ao projetista o valor de cada variável de forma interativa. A digitação de dados será analisado no capítulo Digitação de dados de desenho. TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 6 of 11

Um ponto importante é que variáveis podem ser inicializadas na seção de parâmetros. Se parâmetros deixarem de ser declarados na chamada de um subprograma, automaticamente serão inicializados com o valor declarado nesta seção. Parâmetros só podem passar do programa principal para um subprograma, não o contrário. A única forma de um programa usar um valor calculado no subprograma é através da utilização de variáveis globais. O programa PARALEL.DPS citado no exemplo anterior será parecido com o PARALEL.DP, a menos da seção de PARÂMETROS no início e do comando no fim do arquivo: PARADP.DPS - Desenho de um paralelepipedo de lados COMPRIM, LARGURA e ALTURA e título TITULO PARAMETROS N COMPRIM COM 'Comprimento em cm' N LARGURA COM 'Largura em cm' N ALTURA COM 'Altura em cm' A TITULO COM 'Titulo do paralelepipedo' 1 0,0 3 1 @ %COMPRIM,%LARGURA 2 X3,Y1 4 X1,Y3 POLIGONAL 12341 Vista frontal 8 1 @ 0,-1.3*%_ESCALA 6 8 @ %COMPRIM,-%ALTURA 5 X8,Y6 7 X6,Y8 POLIGONAL 56785 Vista lateral 9 2 @ 2.5*%_ESCALA,0 11 9 @ %ALTURA,%LARGURA 10 X11,Y9 12 X9,Y11 TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 7 of 11

POLIGONAL 91011129 Nos auxiliares 13 5 @ -1*%_ESCALA,0 14 4 @ 0,1*%_ESCALA 15 (X1 + X3)/2,(Y1 + Y3)/2 Cotagens e titulo COTAGEM VERTICAL 5 8 13 COTAGEM VERTICAL 1 4 13 COTAGEM HORIZONTAL 4 3 14 COTAGEM HORIZONTAL 12 11 14 TEXTO 15 CENTRADO '%TITULO' O comando neste caso delimita o fim de um subprograma DPS, e não o fim do desenho. Sistema de coordenadas DPS O DP permite que se especifique coordenadas e ângulo de rotação na chamada do subprograma. Estes valores definem um ponto de inserção do desenho gerado pelo subprograma, em relação ao seu próprio sistema local. Tudo se passa como se o desenho gerado pelo subprograma fosse um bloco de desenho com base (0,0), e a chamada do subprograma (comando DP) o comando de inserção de blocos. Se as coordenadas de inserção e ângulo de rotação não forem definidos, o sistema local do subprograma coincidirá com o sistema de coordenadas do programa principal. Como exemplo, faremos o desenho de uma sapata para ser inserida em um desenho de formas em qualquer escala e ângulo. O ponto de inserção da sapata será o seu centro, que obrigatoriamente terá coordenada (0,0). A figura abaixo mostra o esquema da sapata: Os parâmetros que definem a sapata são: B1/H1, as dimensões externas, B2/H2 as dimensões do pilar sobre a sapata, e GRAV a largura da gravata. A sapata receberá também um título, colocado no lado direito superior. Adotaremos o default para a gravata e permitiremos a definição da escala como parâmetro; o subprograma SAPFOR.DPS será: TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 8 of 11

SAPFOR.DPSForma de concreto para sapatas PARAMETROS ATITULOCOM 'Titulo' NB1COM 'Comprimento da Sapata (cm)' NH1COM 'Largura da Sapata (cm)' NB2COM 'Comprimento do Pilar (cm)' NH2COM 'Largura do Pilar (cm)' NGRAV = 5COM 'Gravata (cm)' NESCALA = 50COM 'Escala 1:x' DEFINE ESCALA %ESCALA 1-%B1/2,-%H1/2 21 @%B1,0 32 @0,%H1 43 @-%B1,0 POL12341 5-((%B2/2) + %GRAV),-((%H2/2) + %GRAV) 65 @%B2 + (2*%GRAV),0 76 @0,%H2 + (2*%GRAV) 87 @- (%B2 + (2*%GRAV)),0 POL56785 POL15 POL26 POL37 POL48 95 @%GRAV,%GRAV POL9 REL %B2,0 @ 0,%H2 @ -%B2,0 @ 0,-%H2 Titulo a direita do no' 3 TEXTO3 @0.5*%ESCALA,0 HTEX 0.4 '%TITULO' Vamos agora inserir uma sapata 120 x 60 com pilar de 40 x 20 sobre os nós 5 e 6 da forma com ângulo de TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 9 of 11

zero graus e no nó 7 com ângulo de 90 (arquivo EXEMPLO5.DP): DP'SAPFOR' 5(A TITULO ='S1', N B1 = 120,N H1 = 60, N B2 = 40,N H2 = 20) DP'SAPFOR' 6(A TITULO ='S2', N B1 = 120,N H1 = 60, N B2 = 40,N H2 = 20) DP'SAPFOR' 7 ANG 90(A TITULO ='S3', N B1 = 120,N H1 = 60, N B2 = 40,N H2 = 20) O resultado será: Uma observação interessante é que os nós 5, 6 e 7 definidos na forma, não têm nenhuma relação com os usados internamente no subprograma DPS. Como dissemos antes, os subprogramas tem as suas próprias variáveis locais, que não interferem com as de outros programas. Subprogramas podem funcionar como se fossem blocos de desenho, com a diferença de que blocos podem ser apenas escalados, enquanto que subprogramas podem desenhar peças em quaisquer proporções, títulos variáveis, etc. Subprogramas podem também efetivamente gerar blocos de desenho. Você pode definir a seção de blocos antes da chamada do subprograma ou mesmo dentro do próprio. ORIGEM de um Subprograma Todos os elementos gráficos de um subprograma são colocados em um sistema local, que pode ser transladado durante a chamada do subprograma. Na prática, o que ocorre é que a origem do sistema local de coordenadas é alterada durante a chamada de um subprograma; esta origem é a mesma definida pelo comando ORIGEM. Por isto o comando ORIGEM não deve ser usado dentro de um subprograma para a mudança de sistema local; se necessário, pode-se chamar outro subprograma mudando o sistema durante a chamada. Por outro lado, todas as coordenadas dentro de um subprograma estão dentro do sistema local. Havendo necessidade de transportar estas variáveis para fora do subprograma (por meio de variáveis globais), para passa-las ao sistema global é necessário antes "desligar" o sistema local, através do comando origem: ORIGEM 0,0 ANG 0 Bibliotecas de subprogramas O que dissemos anteriormente a respeito de bibliotecas de inclusão vale também para bibliotecas de subprogramas. Os subprogramas DPS devem ser isolados em um ou mais pastas (bibliotecas) diferentes, e a TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 10 of 11

definição das pastas é feita através do comando: DEFINE BIBDP 'pasta(s)' Por exemplo, para tornar permanente a definição da biblioteca %_SUPORTE\DP\DPS colocaremos no arquivo %_SUPORTE\DP\INSTAL.DP: DEFINE BIBDP'%_SUPORTE\DP\DPS' Quando um subprograma é chamado, o DP verifica se está na pasta atual, e depois, em cada uma das pastas definidos em BIBDP. Listagem do arquivo DPS Por default, o DP não emite listagens no processamento de subprogramas; apenas erros de sintaxe quando encontrados são mostrados. No entanto, durante a fase de desenvolvimento de um subprograma pode ser interessante que seja listado para facilitar a eliminação de erros. Neste caso, o comando: DEFINE LISTA deve ser colocado no inicio do subprograma a listar. O comando DEFINE NLISTA tem efeito contrário, suprimido as listagens a partir do ponto onde for executado. TQS Informá ca - Rua dos Pinheiros 706 / casa 2-05422-001 - São Paulo/SP - Tel.:(011) 3883-2722 - Fax.:(011) 3883-2798 Page: 11 of 11