<tt>
Constantes e variáveis na linguagem de gráficos táteis
</tt>

<ms>
Na linguagem dos gráficos táteis estão presentes algumas constantes do sistema. As constantes podem ser utilizadas como parâmetros.

- Width: largura do gráfico tátil. A largura do gráfico pode ser alterado usando a instrução "GraphicSize";
- Height: altura do gráfico tátil. A altura do gráfico pode ser modificada utilizando a instrução "GraphicSize";
- SysWidth: A largura do conjunto gráfico tátil nas configurações braille;
- SysHeight: A altura do conjunto gráfico tátil em configurações em braille.

Por exemplo, esta instrução desenha um círculo no centro da folha, usando as constantes.
- Circle(width/2, height/2, 30)

nomes de constantes não podem ser reutilizadas como nomes de variáveis.


Na linguagem de gráficos táteis também podem ser usadas variáveis. 
Elas devem ser declaradas ​antes de serem utilizadas da seguinte forma:

- Label = Valor
O rótulo literal identifica a variável. O valor é um tipo de dado atribuído a ele. Os dados podem ser tanto integer ou string. Por exemplo:
- CoordX = 50
- Name = "Joseph"

As variáveis ​​contêm dados para utilização nos comandos de desenho. Eles são utilizados em lugar dos valores diretos. 
Por exemplo:
- Dot (50,50)
Traça um ponto na coordenada Y50 x50.
- Dot (CoordX, 50)
Traça um ponto na coordenada Y50 x50 usando a variável CoordX instanciada antes.

Uma variável pode ser reutilizada em todas as instruções que se seguem. 
Por exemplo:
- X = 45
- Circle (x, 60,30)
- Dot (x, 60)
A variável x é utilizada na instrução Dot e na Circle.

- Circle (x, 50,30)
- X = 45
- Dot (x, 60)
Este código gera um erro na instrução Circle, porque instancia a variável x apenas após a instrução.

Os dados do tipo string devem estar entre aspas. 
Por exemplo:
- Name = "Biblos"

As variáveis ​​que contêm um tipo string podem ser usadas como um parâmetro em instruções que requerem um valor do mesmo tipo. 
Por exemplo:
- Texto (nome, 50,60,4)

Se você usar uma variável tipo string como um parâmetro para uma instrução que requer um conjunto de dados numéricos, é gerado um erro. 
Por exemplo:
- X = "abc"
- Ponto (x, 50)
Ele gera um erro porque a variável x é uma cadeia que contém letras.

Uma variável pode ser instanciada por outra variável. 
Por exemplo:
- X = 50
- Y = x
- Ponto (x, y)
Será traçado um ponto na coordenada Y50 x50. 

Um determinado tipo numérico também pode ser escrito em hexadecimal. Por exemplo:
- X = # 2a
Em um valor hexadecimal o símbolo "# deve ser colocado antes". 
A variável X é instanciada com o valor decimal 42, isto é, com o segundo número hexadecimal.

Variáveis ​​e valores diretos podem ser aplicados com os operadores aritméticos. 
Por exemplo:
- X1 = 50
- X2 = x1 + 20

As operações aritméticas que podem ser utilizadas são:
- + (Mais) Adição
- - (Hífem) Subtração
- * (Asterisco) Multiplicação
- / (Barra) Divisão

Os operadores acima são de tipo binário, porque exigem dois valores para ser aplicado. Por exemplo:
- Dot (10 + 5, 70 + 20)
- X = 50-30
- G = 5 * 6
- Dot (x + l / 6, 6 * l)

também estão presentes dois operadores binários:
- + (Mais) torna o número sempre positivo
- - (Hífem) altera o sinal do número

Por exemplo:
- X = 50
- Z = -x
= Y + z / 2
A variável Z terá o valor de -50 e a variável Y irá conter o valor 25.

Todos os operadores aritméticos podem ser utilizados tanto na instância de uma variável em um parâmetro de instrução. Você não pode usar parênteses para operações aritméticas.

Duas ou mais strings podem ser concatenadas diretamente ou como váriáveis . 
Para concatenar strings use o símbolo "+". 
Por exemplo:
- Name = "Joseph"
- Cogname = "Digrand"
- Completo = Nome+" "+Cognome

Concatenações também podem ocorrer em um parâmetro de instrução. Por exemplo:
- Text (nome + "" + sobrenome, 50,50,4)

As variáveis ​​instanciadas na estrutura do gráfico são chamadas de variáveis ​​globais. As variáveis ​​instanciadas na estrutura de uma sub-rotina são chamadas de variáveis locais. 
As variáveis ​​globais podem ser usadas na estrutura principal do gráfico e todas as sub-rotinas. 
As variáveis ​​locais podem ser usadas apenas dentro da sub-rotina onde forem instanciadas. Se uma variável local tem o mesmo nome de uma variável global dentro da sub-rotina, será sempre considerada a variável local.
</ms>

<rl>
TBiblosBrailleGeometry.Language.ArithmeticOperators
TBiblosBrailleGeometry.Language
</rl>

<ck>
000PPB6YA64CUD
</ck>

<in>
0 0
</in>
