Assigment 2: 2D Graphics and Interaction

Pacote com a versão final da Tarefa 2: [ tar ].
Para compilar todas as tarefas basta descompactar o arquivo e executar um make all.


1 - Using the gp library, write a program to draw a square

Para a tarefa 2.1, foi implementado um aplicativo que desenha quadrados de duas formas distintas: mostrando apenas o contorno ou com o interior preenchido. A distinção do modo de desenho é realizada pressionando a tecla w (wire) para exibir apenas o contorno e f (fill) para exibir o quadrado preenchido.

A Figura abaixo mostra ambas visualizações do quadrado.

[ code ]

2 - Using the gp library, write an interactive program to input a 2D polygonal curve. The program should write the data to the standard output.

Para a tarefa 2.2, foi implementado um aplicativo que desenha curvas poligonais de três formas distintas: curva aberta, curva fechada ou polígono com o interior preenchido. A distinção do modo de desenho é realizada pressionando a tecla L para exibir uma curva aberta, P para exibir uma curva pechada e F para exibir o polígono preenchido. Após desenhar os objetos, a aplicação pode salvar as informações em um arquivo texto. Para isso, ao executar o programa, deve-se passar como parâmetro o nome de um arquivo texto que será usado para salvar os dados.

A Figura abaixo mostra três objetos desenhados com visualizações distintas.

[ code ]

3 - Using the gp library, write a program that reads a 2D polygonal curve from the standard input, and draws it.

Para a tarefa 2.3, foi implementado um aplicativo que lê um arquivo (no padrão implementado na tarefa 2.2) e exibe os objetos. Para isso, ao executar o programa, deve-se passar como parâmetro o nome do arquivo (gerado pelo programa da tarefa anterior) que contenha os dados que serão exibidos.

A Figura abaixo mostra três objetos desenhados com visualizações distintas, cujos dados foram lidos de um arquivo.

[ code ]

4 - Using the tk library, design and implement a choice menu. When a choice is selected the program should print the corresponding text.

Para a tarefa 2.4, foi implementado um aplicativo com três botões. Quando os dois primeiros são pressionado uma mesnagem aparece no terminal ('A' e 'B', respectivamente) e quando o último é pressionado encerra-se o programa.

A Figura abaixo mostra o aplicativo com tais botões.


[ code ]