ANACOM | histórico | aplicações | fonte | algoritmos | combinações | exemplos | exemplo 2 | exemplo 3 | programa | downloads

:: ALGORITMOS ::

Os algoritmos aplicáveis ao projeto ANACOM são inúmeros. Aqui mostramos alguns e como utilizá-los em Macros ou rotinas de diversas linguagens de programação.

Inicialmente, os algoritmos foram divididos em duas classes principais: Caminhos e Algoritmos propriamente ditos.

Os Caminhos são as trilhas pelas quais os elementos irão sendo dispostos sobre um gráfico cartesiano pré-definido.

Por exemplo, vamos tomar um gráfico de dimensões 10x10, ou seja, o valor máximo de X é 10 e o de Y é 10.
Depois disso, estabelece-se uma sequência baseada na sequência padrão, ou usa-se ela mesma:

 

Aqui usamos os elementos (a,b,c,d,e,f,g,h,i,j,k,l,m,n), a sequência padrão. Pode-se usar qualquer tipo de sequência para o desenho, por exemplo (a,c,f,i,k,m,b,a,e,e), (a,b,c,d), etc.
Definida a sequência, escolhe-se a trilha a ser seguida. O conjunto de trilhas estabelecidas até agora são as seguintes:

sequência linear Sequência quebradaEspira
Sequência em U Sequência diagonal Grega

NOTA: Alguns caminhos são também possíveis e que não estão mostrados aqui, como o caminho do cavalo do xadrez, que obedece a certas restrições de largura e altura.

Suponhamos que se escolha o primeiro caminho da primeira figura dos caminhos (com direção da esquerda para a direita em todas as linhas - vai-e-volta), ou Caminho L1, com a sequência original (A,B,C,D,E,F,G,H,I,J,K,L,M,N). Os elementos então seguirão este caminho, exatamente na sequência escolhida. Tendo esses dados, estabelecemos ainda que a Matriz, ou o desenho resultante, terá 10 letras em cada linha (Largura = 10) e 10 linhas (Altura = 10). O desenho resultante neste caso será:

ABCDEFGHIJ
KLMNABCDEF
GHIJKLMNAB
CDEFGHIJKL
MNABCDEFGH
IJKLMNABCD
EFGHIJKLMN
ABCDEFGHIJ
KLMNABCDEF
GHIJKLMNAB

Como se pode observar, existe um padrão de repetição de início de linhas, a partir da linha 8. Isso que dizer que, para esta sequência em particular, com Largura = 10, basta ter Altura = 7 para se ter um padrão completo.

OUTRO EXEMPLO: Com L=5 e A=5, e a mesma sequência anterior, mas tendo o caminho Q1:

ABCDE
JIHGF
KLMNA
FEDCB
GHIJK

Fica mais fácil fazer esse tipo de painel usando letras de outra fonte ao invés das imagens da fonte ANACOM.TTF de início, convertendo o desenho depois. O programa interativo percorre alguns destes caminhos (ainda incompleto nos algoritmos de todos eles).

Dica: Um dos processos mais interessantes de se fazer um desenho é jogar com elementos que sejam negativos und dos outros, como por exemplo A/N, B/D, C/E, F/L, G/M, H/J e I/K. Usando estes pares consegue-se fazer um desenho repleto de 'trilhas', o que pode gerar, em desenhos de dimensões grandes (maiores que 200 elementos), efeitos interassantes e surpreendentes. Um exemplo desse tipo de desenho pode ser encontrado aqui (a fonte ANACOM deve estar instalada para vê-lo) .

EQUAÇÕES

As Equações propriamente ditas funcionam com base nas coordenadas do gráfico cartesiano (cuja origem está no ponto (1,1) e de crescimento positivo para ambos X e Y (ou seja, do canto inferior esquerdo para o canto superior direito). Por exemplo, tome-se a equação x² + y². Ela não é resolvida como uma equação de segundo grau, é simplesmente uma conta feita com os valores de X e Y no gráfico do desenho.

Usando como referência a sequência (B,C,D,E), transpomos os resultados dos cálculos nos pontos do gráfico da seguinte maneira:

Antes de mais nada, devemos considerar que cada posição no gráfico tem uma coordenada X e Y. Imagine um papel quadriculado, onde você delimitou o tamanho final do seu desenho, digamos A=4 e L=6. Agora, faça um esquema para não se perder nas coordenadas. Escreva os números das linhas e colunas neste gráfico, da seguinte maneira:

4| | | | | | |
3| |•| | | | |
<- O está no ponto (2,3), ou seja, x=2 e y=3
2| | | | | | |
1| | | | | | |

_|1|2|3|4|5|6|

Para x = 2 e y = 3, o resultado deste ponto (2,3) será o número (2^2 + 3^2 => 4 + 9) = 13, a aplicação da equação. O número 13 corresponde à letra B. Para facilitar a visualização, mostramos aqui a matriz gerada para os números atribuídos às letras dos elementos e o desenvolvimento do desenho:




B|1 5 9  13 17
C|2 6 10 14 18
D|3 7 11 15 19
E|4 8 12 16 20,etc.
Vamos fazer as contas:
 
 
4|17|20|25|32|41|52
3|10|13|18|25|34|45
2|5 |8 |13|20|29|40
1|2 |5 |10|17|26|37
_|1 |2 |3 |4 |5 |6 
Vamos transformar os números
nas letras da sequência:
 
4|B |E |B |E |B |E
3|C |B |C |B |C |B
2|B |E |B |E |B |E
1|C |B |C |B |C |B
_|1 |2 |3 |4 |5 |6 

Virtualmente qualquer equação poderá ser usada nos desenhos; basta transpor os valores de X e Y nas equações, calcular e transformar os resultados nas letras dos elementos. É um método trabalhoso e talvez complicado, mas os resultados são muito interessantes. Veja os exemplos1 e exemplo2 para ter uma idéia melhor.