O sistema em questão é uma ferramenta interativa para desenhar redes de regulação gênica. Ela foi desenvolvida em Java 2 por ser uma linguagem orientada à objetos, independente de plataforma, podendo ser executada tanto em Windows quanto em Linux, e por ser robusta.
Uma característica importante desta ferramenta é a facilidade de uso, permitindo que o usuário construa ou atualize uma rede, o desenho que representa uma rede de regulação, via mouse. Utilizando o mouse, o usuário pode mover, inserir e/ou remover arestas e vértices do grafo que representa a rede.
Como pode-se ver na figura 5 abaixo, o programa possui cores e formas diferentes para distinguir os diferentes tipos de elementos da rede (genes, proteínas, metabólitos, etc). Da mesma forma, possui cores e formas distintas para indicar as relações entre os elementos da rede (inibição ou estimulação).
Depois que o usuário desenhou uma rede, ele pode imprimi-la, bastando para isso clicar no botão de impressão, localizado na barra de ferramentas.
![]() |
Figura 5: A Ferramenta. |
Além de permitir o desenho de uma rede a partir do início, ou seja, abrindo um arquivo novo e começando a desenhar, o programa também lê a especificação de uma rede a partir de um arquivo texto e a desenha na área de desenho. Esta especificação pode estar em dois formatos: em um formato próprio da ferramenta, como descrito abaixo, ou em XML (Extensible Markup Language).
No formato abaixo, pode-se notar cinco marcadores duplos: gf , vt , v , ac , e a . O marcador gf possui um único atributo chamado nome, que é o brigatório, indicando o nome do grafo. O marcador vt também possui um único atributo, que também é obrigatório, chamado nv, que indica o número de vértices que o grafo possui. Já o marcador v possui cinco atributos, sendo eles nome, forma, cor, cx e cy. Destes, o único obrigatório é o nome do vértice. Os outros quatro são opcionais, sendo que cx e cy são as coordenadas x e y de um vértice no plano. Este marcador delimita o início e o fim das informações a respeito de um vértice em particular. De forma análoga à vt , o marcador ac também possui um atributo obrigatório, chamado na, que indica o número de arcos existentes no grafo. O último dos cinco marcadores é o a , que possui três atributos obrigatórios, sendo eles vi, vf e tipo, indicando o nome do vértice inicial, o nome do vértice final e o tipo de arco, respectivamente. O atributo restante é a cor do arco, que é opcional. Este marcador também delimita informaçõa respeito de um arco.
Este formato foi o primeiro a ser utilizado pelo programa e é flexível o suficiente para permitir alteraçõs futuras, isto é, inserir e/ou remover marcadores e atributos.
![]() |
Figura 6: Formato próprio do programa. |
O XML, que é um formato para armazenar e organizar dados, independente de qualquer programa de software que funcione com os dados, começou a ser utilizado pelo fato de os dados compatíveis com o XML serem mais fáceis de reutilizar. Isso deve-se ao fato de que os dados são estruturados de um modo padrão, permitindo que programas leiam e escrevam os dados desde que tenham suporte para XML. Além disso, os dados são auto-documentados, tornando fãcil que as pessoas entendam a finalidade de um arquivo simplesmente examinando-o em um editor de textos.
Para processar um arquivo XML, o programa utiliza o pacote javax.xml.parsers e a técnica DOM (Document Object Model), em vez da técnica SAX (Simple API for XML), visto que o processamento XML é mais fácil com a primeira. Como o programa também salva uma rede em um arquivo texto, nos formatos mencionados, a utilização de XML é boa pois não é necessário nenhuma API para escrever em arquivos XML, basta escrever strings com os marcadores XML em um arquivo texto.
O programa permite que informações de texto sejam vinculadas aos vértices do grafo, tais como uma descrição da função biológica ou um link para um banco de dados, que podem ser visualizadas e alteradas na área de texto. Com isso, o usuário pode modificar as informaçõs respeito dos elementos da rede que esteja construindo.
Um ponto muito importante a ser ressaltado neste projeto é que se no arquivo de entrada, as posições x e y dos vértices forem omitidas, ou seja, os atributos cx e cy do marcador v , a ferramenta utiliza um algoritmo de desenho de grafos para desenhar a rede de forma a minimizar o número de cruzamentos entre as arestas. O programa se utiliza de um algoritmo para "decidir" qual a melhor forma de desenhar a rede.
<< Anterior | | | Índice | | | Próximo >> |