Professional Documents
Culture Documents
c
ao Optica
Geom
etrica
Ines Terrucha 75843
Patrcia Manso 79026
Programacao
Professor Samuel Eleuterio
Instituto Superior Tecnico
Mestrado em Engenharia Fsica e Tecnologica
2013/2014
13 de Janeiro de 2014
Resumo
O presente relat
orio faz-se acompanhar do codigo referente ao projecto computacional,
servindo de complemento para o mesmo. Assim, apresenta-se como que um manual de
instruc
oes para o utilizador do programa e explica, sumariamente, os objectivos do projecto.
Introdu
c
ao
Manual de Instru
co
es
Para o Programador
O codigo do programa est
a escrito em C em ambiente de janelas, sendo que para as construir terao sido utilizadas as bibliotecas Gtk+. Optamos por iniciar o programa numa janela
inicial que pede ao utilizador a escolha de outras 3, cada uma referente a cada tipo de espelho:
concavo, convexo ou plano (tnhamos inicialmente pensado em utilizar apenas uma janela com
um espelho interactivo a utilizar o comando cairo curve to mas acabamos por mudar para o
descrito anteriormente que utiliza no caso do espelho concavo e convexo o comando cairo arc
por conveniencia).
Para organizar tanto os bot
oes como as labels, como os objectos ou a toolbar, optamos pela
utilizacao de vboxes e hboxes. Utiliz
amos ainda o conhecido cairo para a criacao dos diversos
objectos e tudo o mais que seja animado no programa.
Todos os pequenos pormenores relativamente a programacao podem ainda ser consultados
no proprio c
odigo, uma vez que este se encontra extensivamente comentado.
Para o Utilizador
Uma vez aberto o programa, o utilizador dara de caras imediatamente com uma janela inicial
com o aspecto da Fig. 1. Esta permite redireccionar o utilizador para uma, ou todas, as nossas
janelas secund
arias. Cada uma delas tem, respectivamente os aspectos correspondentes `as Fig.
2 (espelho concavo - bot
ao )), 4 (espelho convexo - botao () e 3 (espelho plano - botao |).
Comecemos portanto por falar nas funcionalidades da janela representada na Fig. 1. Para
alem dos 3 bot
oes que se encontram no fim da janela, reconhecemos facilmente 3 outros icons
na parte superior da mesma. O ponto de interrogacao, que permite aceder directamente a este
mesmo documento (desde que este se encontre na mesma directoria do programa e conserve o
nome relatorio.pdf); o bot
ao de desligar (smbolo universal), que termina o programa; e o icon de
um altifalante, que permite a audic
ao de uma m
usica considerada, pelas programadoras, alusiva
ao tema (Nota: esta opc
ao est
a em stand-by e ainda n
ao funciona, a discutir com o Professor.).
De notar que sempre que o utilizador pretender sair de uma janela, o programa perguntarlhe-a atraves de uma janela di
alogo semelhante `a da Fig. 5 se quer mesmo sair.
Figura 5: Screenshot da janela dialogo Are you sure you want to quit?.
Conclus
ao
In
es
A trabalhar pela segunda vez em Gtk+, apercebi-me o quao enferrujada me encontrava
novamente, e acabei por experimentar maneiras diferentes de fazer as coisas e por me focar em
pormenores diferentes. Continuo a preferir trabalhar em ambiente de janelas pelo ver coisas a
acontecer. De resto, tenho apenas a acrescentar que este trabalho nunca estaria acabado se o
tempo fosse infinito uma vez que e sempre possvel acrescentar detalhes a projectos deste tipo.
Apenas tenho a dizer que gosto da forma como foi elaborado apesar de todas as voltas que deu
ate ao resultado final.
Patrcia
Apesar do conte
udo fsico/matem
atico necessario para o criar ser bastante simples, o projecto
de
foi muito interessante e enriquecedor, especialmente do ponto de vista da programacao. E
facto fascinante ver as centenas de linhas de codigo ganhar vidasob os nossos comandos e criar
um programa u
til, f
acil de utilizar e, sob certos pontos de vista, bastante divertido.
O sistema GTK+ mostrou-se realmente uma otima ferramenta, tal como o cairo, e serviram
muito bem para os nossos prop
ositos.
Do ponto de vista do utilizador, penso que o programa e bastante claro e user friendly,
sendo manipulado maioritariamente `
a base do rato, e tem algumas caractersticas engracadas
que tornam tudo bastante mais interessante.
Como balanco final, posso dizer que foi um trabalho extremamente benefico para o nosso
desenvolvimento enquanto programadoras, tendo fomentado a nossa aprendizagem do funcionamento e utilizac
ao do GTK+, do cairo e da propria linguagem de programacao C.