3.2 Interfaces de Usuários
3.2.2 Interfaces Secundárias
3.2.2.2 Interfaces de usuário vinculadas aos MCEs
A árvore Modelos Computacionais de Exposição está dividida em dois itens: DosimetriaExterna e DosimetriaInterna. Cada item possui quatro controles Button. Para fins de facilitar a programação desta árvore, foram criadas as duas pastas (Figura 60).
Figura 60 – Janela do aplicativo SID mostrando a localização das pastas DosimetriaExterna e
DosimetriaInterna.
A pasta DosimetriaExterna contém quatro janelas-filhas para manipular os MCEs disponíveis para este trabalho. Para estas janelas usou-se o controle Silverlight Child Window27. As Figura 61 (a) e Figura 61 (b) exibem o caminho seguido para a criação da janela secundária E_FSTAEGSnrc (E = Externa; FSTA = Fash Standing; EGSnrc é o código Monte Carlo).
27
Neste trabalho, similarmente às páginas Silverlight, as ChildWindow são chamadas de janelas secundárias ou simplesmente janelas.
Figura 61 – (a) Fragmento do Solution Explorer para adição de um novo item Silverlight Child
Window e (b) Fragmento da janela Add New Item com a nomeação da UI E_FSTAEGSnrc.
(a) (b)
A Figura 62 exibe o ambiente de design da UI E_FSTAEGSnrc com seus controles e a Figura 63 o ambiente de código em C# correspondente.
Figura 63 – Códigos C# da UI E_DosimetriaExterna.xaml.cs embutidos em regiões.
A construção da janela para dosimetria externa é similar para os quatro modelos e é apresentada a seguir, em passos, para o modelo E_FSTAEGSnrc.
Passo 1: Todos os controles foram organizados em uma Grid principal com um StackPanel. Os primeiros controles são um TextBlock, nomeado como Fontes Disponíveis, e uma ComboBox, com uma lista das fontes disponíveis para o modelo. A Lista 7 do apêndice A apresenta parte dos controles e suas respectivas marcações em XAML.
Passo 2: Os próximos controles estão organizados em células de uma Grid secundária e são: oito TextBlock e seis TextBox que estão relacionados a parâmetros da fonte, tais como, Localização e Dimensões. Para a fonte 13, Isotrópica num Plano Circular, o raio do círculo deve ser digitado pelo usuário e os demais dados são preenchidos automaticamente com a definição da fonte. A Lista 8 do apêndice A traz os controles e suas marcações em XAML.
Passo 3: Os controles disponibilizados na sequência são um TextBlock, para o texto Energia da Fonte; um RadioButton junto com uma ComboBox, para selecionar o espectro de energias a partir do arquivo de texto mspectra.txt28; e mais um RadioButton junto com uma TextBox, para o caso do usuário preferir definir um ou vários valores de energia. A Lista 9 do apêndice A exibe os controles e o correspondente código em XAML.
Passo 4: Para definição do número de histórias da simulação, tipo da partícula, energia de corte para elétrons, energia de corte para fótons e peso da partícula, foram usadas dez células de uma Grid secundária, cinco com TextBlock junto com cinco TextBox. A Lista 10 do apêndice A mostra os controles e o correspondente código em XAML.
Passo 5: Para finalizar o design da janela foram adicionados os três controles Button mostrados na Lista 11 do apêndice A.
Alguns arquivos usados para realizar tarefas específicas com os MCEs precisam ser localizados no SID. São eles, o arquivo de texto mspectra.txt que traz espectros de energias utilizados em diversas simulações, o ArquivoDados_DE.txt com resultados de simulações em dosimetria externa e o ArquivoDados_DI.txt com resultados de simulações em dosimetria interna.
O arquivo mspectra.txt foi adicionado ao projeto SID como um arquivo Resource.resx, seguindo-se os procedimentos já apresentados para a adição de outros itens. A Figura 64 apresenta a janela Add New Item com o item Resources File e seu nome para o projeto.
Figura 64 – Janela Add New Item para adicionar arquivos de recursos.
Clicando no botão Add na Figura 64 apresenta-se a janela Resource.resx da Figura 65, onde se vê o caminho seguido para adicionar o arquivo mspectra.txt.
28
Este arquivo de texto contém um catálogo com os espectros de energia (valores de energia ponderados) correspondentes a parâmetros de máquinas de raios-X mais comumente utilizados.
Figura 65 – Janela Resource.resx com o caminho para a adição do arquivo mspectra.txt.
Os Arquivos ArquivoDados_DE.txt e ArquivoDados_DI.txt foram compactados e suas versões zip foram localizadas em dois lugares distintos: em campos de uma tabela do BD SID_Dados e no sítio do GDN através de links.
Para dar ação a todos os controles adicionados nos passos anteriores é preciso fazer a codificação em C# no arquivo E_FSTAEGSnrc.xaml.cs (ver o código completo na Lista 12 do apêndice A). Este arquivo contém a parte do namespace SID.DosimetriaExterna que define a classe E_FSTAEGSnrc, por sua vez separada em quatro regiões:
Membros de dados: Define diversas variáveis privadas para manipular as ações da classe. Construtor: Nesta função são realizadas ações: de inicialização do layout da janela;
transferência dos conteúdos dos arquivos adicionados ao aplicativo como recursos para variáveis internas; preenchimento da caixa combo reservada para os espectros de raios-X com as linhas contidas nos cabeçalhos de cada bloco de dados do arquivo mspectra.txt; preenchimento da caixa de texto reservada para a lista de valores de energia com uma lista padrão contendo 19 valores de energia entre 10 e 10000 keV.
Funções de Eventos: Aqui são definidas as funções manipuladoras dos eventos de marcação (Checked), de mudança de seleção (SelectionChanged) e de clique (Click). Função Auxiliar: Nesta região é definida a função privada CriaSalvaArquivoExpoInput
que utiliza os dados carregados nos recursos e as informações passadas pelo usuário para criar o arquivo de texto que é parte dos dados de entrada no MCE E_FSTAEGSnrc.
Similarmente à pasta DosimetriaExterna, a pasta DosimetriaInterna possui quatro janelas-filhas para manipular os MCEs disponíveis. Também para construção destas janelas usou-se o controle Silverlight Child Window com diferenças nos controles e ações que serão
requeridos. A Figura 66 exibe o ambiente de design da janela I_MSTAEGSnrc (I significa Interna, MSTA significa Mash Standing e EGSnrc, o código Monte Carlo) com seus controles.
Figura 66 – Ambiente de design e marcação da janela I_MSTAEGSnrc.
Os resultados apresentados para ilustrar o modo como o usuário do SID deve proceder para obter dados dosimétricos são baseados em dosimetria interna, mais especificamente, no I_MSTAEGSnrc. A ilustração já está completamente implementada em WPF Application, um tipo de projeto no MVS 2010 para desktop que utiliza classes de listas genéricas e classes para compactação e descompactação de arquivos, necessárias nas manipulações de entrada e saída de dados do sistema. Algumas dessas classes ainda não estão incorporadas a projetos Silverlight 4.0. Assim, os botões que dão acesso às UIs relacionadas com dosimetria interna ficarão desabilitados e o usuário poderá acessar uma interface complementar, desenvolvida em WPF Application denominada DoRadIo, cujo projeto foi adicionado ao Solution Explorer do SID. A Figura 67 mostra o ambiente de design alternativo WPF incorporado ao SID.
A janela principal do SID29 traz um link para baixar a interface DoRadIo.