Resumo da Linguagem
Mostraremos aqui todos os comandos disponíveis no DP, de acordo com as convenções já mostradas no manual. As linhas precedidas por $ são comentários.
$
$Operadores aritméticos e lógicos
$
+Mais
-Menos
*Vezes
/Dividido
**Elevado
(Parênteses esquerdo
)Parênteses direito
=igual a
<> ou !=diferente de
>maior que
>=maior que ou igual a
<menor que
<=menor que ou igual a
EE lógico
OUOu lógico
NAONão lógico
$
$Definição de ângulos em graus, minutos e segundos
$
graus ^ minutos segundos
$
$Valores alfanuméricos
$
'texto'
$
$Funções
$
SEN (x)Seno de um ângulo em graus
COS (x)Coseno
TAN (x)Tangente
ASEN (x)Arco em graus cujo seno vale x
ACOS (x)Arcoseno
ATAN (x)Arctangente
RAIZ (x)Raiz quadrada de um número
FIX (x)Parte inteira de um número
FRAC (x)Parte fracionária de um número
ABS (x)Valor positivo de um número
LEN ('tex')Comprimento de um alfanumérico
CMP ('tx1','tx2')Comparação de 2 alfanuméricos. Retorna (0) se forem iguais, (1) se diferentes
LEFT ('tex', nc)nc caracteres a esquerda de 'tex'
RIGH ('tex', nc)nc caracteres a direita de 'tex'
MID ('tex', i, nc)nc caracteres de 'tex' a partir de i
POS ('tx1','tx2')Posição de 'tx2' dentro de 'tx1'. Retorna (0) se não estiver em 'tx1'
$
$Definição de coordenadas
$
x,ycoordenadas x,y
d<angcoordenadas polares distância/ângulo
nnocoordenadas iguais às do nó nno
nno @ x,ycoordenadas do nó nno mais deslocamento x,y
nno @ d<angcoordenadas do nó nno mais distância/ângulo
'eixo'coordenadas da intersecção de eixos
'eixo' @ x,yintersecção de eixos mais deslocamento x,y
'eixo' @ d<angintersecção de eixos mais distância/ângulo
$
$Construção geométrica de nós:
$a - Por coordenadas
$b - Offset com valor em relação a 2 pontos
$c - Intersecção de duas retas
$d - Projeção de um ponto sobre uma reta
$
nnocoord
OFFSETvalorcoord1coord2
INTERSECCAOlinha1linha1
PROJECAO coord1coord2coord3
$
$onde "linha" pode ser:
$
$coord1coord2
$coordANG angulo
$
$Operadores geométricos com nós
$
DISnno1 nno2 Distância entre 2 nós
DXnno1 nno2 Delta X entre 2 nós
DYnno1 nno2 Delta Y entre 2 nós
Xnno X de um nó
Ynno Y de um nó
DIRnno1 nno2 Direção de 2 nós
$
$Sistema local de coordenadas
$
ORIGEM [coord] [ANGULO angulo]
$
$Geração de nós em linha
$
nno coord [ A nno2 [ PASSO num ] coord2 ]
$
$Geração de nós em malha
$
nno1 A nno2 [PASSO num] [ANG angulo]
$
$Lista de coordenadas
$
coord1; coord2; coord3; ...
coord1 @ coord2 @ coord3 ...
$
$Elementos gráficos básicos
$
POLIGONALlista-de-coord [NVD nivel] [[OFFSET valor][NVD nivel]]
LINHA lista-de-coord [NVD nivel] [[OFFSET valor][NVD nivel]]
CURVAlista-de-coord [NVD nivel] [[OFFSET valor][NVD nivel]]
CIRCULO[ C coord ] -
[ R valor ] -
[ DIAM valor ] -
[ PI coord ] -
[ PF coord ] -
[ PM coord ] -
[ NVD nivel ] [OFFSET valor [NVD nivel]]
ARCO[ C coord ] -
[ R valor ] -
[ CORDA valor ] -
[ PI coord ] -
[ PF coord ] -
[ PM coord ] -
[ ANA angulo ] -
[ ANI angulo ] -
[ ANF angulo ] -
[ DIR angulo ] -
[ NVD nivel ] [OFFSET valor [NVD nivel]]
TEXTOcoord[HTEX valor] 'texto' [NLIN num]-
[NVD nivel] -
[ANG angulo]
TFERROcoord[HTEX valor] 'texto' [NLIN num]-
[NVD nivel] -
[ANG angulo]
$
$Blocos de desenho
$
BLOCO 'nome' [coord]
(definição de elementos gráficos do bloco)
....
FBL
INSERE 'nome' lista-de-coordenadas
[ESX val] [ESY val] [ESC val] [ANG ang]
BASE coord
$
$Mistura de desenhos e Máscaras
$
MISTURA 'nome' [coord]
MASCARA 'nome' [coord]
BASE coord
$
$Cotagem
$
COTAGEM HORcoor1 [TEXTO 'texto'] coor2 coor3 [lista-de-coord]
VERcoor1 [TEXTO 'texto'] coor2 coor3 [lista-de-coord]
ALIcoor1 [TEXTO 'texto'] coor2 coor3 [lista-de-coord]
INCang coor1 [TEXTO 'texto'] coor2 coor3 [lista-de-coord]
CON[lista-de-coord]
$
$Eixos
$
EIXOS HORIZONTAL ['A'] y1 y2... VERTICAL ['1'] x1 x2 ...
$
$Definição de variáveis
$"nome" pode ter até 8 letras e/ou números
$
NUM nome[[=] valor ]
ALF nome[[=] 'texto']
COO nome[[=] coord ]
$
$Macro-substituição de variáveis
$
$ a -Variáveis precedidas por % são substituidas por seu
$valor, durante a fase de leitura de linhas.
$ b -Em %A%B, %B é substituido primeiro, alterando %A. Este
$é o efeito de "Dupla Substituição".
$ c -Dois sinais % seguidos são automaticamente eliminados.
$ d -Em variáveis numéricas, %.5A significa: substituir A
$com até 5 casas depois da vírgula
$
$Escopo de Variáveis
$
$ a -Dentro da seção de DESENHO e dos subprogramas, as
$variáveis são locais.
$ b -Fora da seção de DESENHO, as variáveis são globais.
$ c -Variáveis locais são conhecidas somente na seção onde
$foram declaradas. Variáveis globais são conhecidas em
$qualquer parte do programa.
$ d -Variáveis podem ser explicitamente declaradas nas
$seções LOCAIS, GLOBAIS e PARAMETROS.
$
GLOBAIS
declarações
FIM
LOCAIS
declarações
FIM
PARAMETROS
declarações
FIM
$
$Declarações:
$
NUMnome[[=] valor ] [ COM 'texto']
ALFnome[[=] 'texto'] [ COM 'texto']
CÔOnome[[=] coord ] [ COM 'texto']
$
$Chamada de Subprogramas e inclusões
$
DP 'nome' [ coord ] [ ANG angulo ] (
declaração, declaração, .... )
INCLUI 'nome' [ OPCIONAL ]
$
$Controle de fluxo de programa
$
SE expressão lógica
.... comandos.....
[ SENAO ]
.... comandos.....
[ SENAO SEexpressão lógica]
.... comandos.....
FIM
REPETE nome [=] valor1 [A] valor2 [PASSO valor]
.... comandos ....
FIM
ENQUANTOexpressão lógica
.... comandos ....
FIM
QUEBRA
CONTINUA
SAÍDA
$
$Definição de parâmetros de controle
$
DEFINE parâmetro [valor] ...
$
$Parâmetros do comando DEFINE:
$
$ParametroDefault Obs
$
IAPLICN9Tipo de aplicação:
(1) Genérico
(2) TQS-Formas
(3) TQS-Lajes
(4) TQS-Fundações
(7) TQS-Vigas
(8) TQS-Pilares
(9) TQS-AGC&DP
(11) TQS-Madeira
(15) CORBAR
(16) CORMAD
(17) TQS-Alvest
ISUBAPLICN1Tipo de subaplicação: veja na página 70.
LISTAHabilita listagens
NLISTADesabilita listagens
ERROS num15Limite de erros (0) = ilimitado
ESCALA valor50Fator de escala
TABPLT 'nome'''Nome da tabela de plotagem
TAMTTX valor0.24Tamanho default de texto
TAMTEIvalor0.4Tamanho do texto de eixos
NÍVELnum0Nivel default de desenho
NIVCORnivel corCor associada a nível
BIBDP'nome''.'Pastas de subprogramas
BIBBLO'nome''.'Pastas de blocos
BIBINC'nome''.'Pastas de inclusão
SEMENTE'nome''%SUPORTE\NGE\seed' Semente de desenho
TAMTCOvalor0.22 Tamanho do texto de cotagem
NCOTLCHCotagem sem linha de chamada
COTLCHCotagem com linha de chamada
COTEXEval0.4Extensão da linha de chamada
COTEXOval0.4Gap da linha de chamada
COTTSZval 0.25Tamanho da marca da linha de cotagem
COTDLEval 0.Extensão da linha de cotagem
COTNIVival221Nível de cotagem
COTNICival-1Nível da linha de cotagem
COTNILival -1Nível das linhas de chamada
COTMULval 1.0Multiplicador de dimensões
COTPRCival1Precisão de cotagem , c/supressão de zeros
COTBLO'nome' 'TICK'Nome do bloco de marca cotagem
PARDES'nome'ivalParâmetro numérico para o .PAD
PARDES'nome' 'texto'Parâmetro alfanumérico para o .PAD
$
$Controle de projeto
$
PROJETO num
$
$Mensagens
$
MENSAGEM 'texto'
AVISO 'texto'
ERRO 'texto'
$
$Listagens de coordenadas e variáveis
$
LISTARnno1nno2nno3nno4 ....
nno1 Anno2nno3 Anno4 ...
DISTANCIAnno1nno2
DRETAnno1nno2nno3
NOS
VARIÁVEIS
TUDO
EXPRESSAOvalor
$
$Acesso ao MS-DOS
$
DOS 'comando'
$
$Variáveis Globais do Sistema (pré-definidas)
$
$ NomeTipoObservações
$
_IAPLICNTipo de sistema
_ISUBAPLICNTipo de subsistema
_ERROSNNumero de erros detectados
_ESCALANEscala atual
_TAMTTXNTamanho de texto, comando TEXTO
_TAMTEINTamanho de texto para o comando EIXOS
_NIVELNNível de desenho atual
_TAMTCONTamanho do texto de cotagem
_COTNIVNNível de cotagem
_COTLCHNCotagem c/ linha de chamada (0) não (1) sim
_COTMULNMultiplicador de dimensões de cotagem
_COTBLOABloco de cotagem
_COTNILNNível da linha de cotagem
_COTNICNNível da linha de chamada
_TABPLTATabela de plotagem
_DATAAData do sistema
_HORAAHora do sistema
_DIRETAPasta atual de trabalho
_BIBDPABiblioteca de subprogramas DPS
_BIBBLOABiblioteca de blocos
_BIBINCABiblioteca de arquivos de inclusão
_SEMENTEASemente de desenho