C#: GDI+ e conceitos de Computação Gráfica

Ultimamente estou conseguindo dedicar um pouco mais de tempo para faculdade, isto significa que: Consigo colocar em prática o que vejo lá e fazer alguns programinhas (mesmo que nas coxas) para usar em sala de aula ou para corrigir exercícios.

Na última aula, após uma longa revisão de álgebra linear, começamos vendo sobre o posicionamento de um objeto em um plano cartesiano e sua translação (e eu achando que movimento de translação tem haver com o movimento que a Terra faz em volta do Sol, mas na verdade é a movimentação em qualquer direção).

Fiz um programinha em C#, que lê alguns pontos em um DataGrid e calcula os novos pontos de acordo com os parâmetros passados pelo usuário para mover o objeto.

Não coloquei comentários no código, o que pode dificultar um pouco, mais basicamente:

O usuário entra com os pontos no Grid da esquerda, os valores podem ser em centimetros, depende do universo do usuário, podem ser metros, centimetros, pixels ou anos luz, resumindo, qualquer medida de distância.

Na última aula, vimos como aplicar a translação em um conjunto de pontos dentro do SRU (Sistema de Referência Universal), ou seja, os pontos e quanto o objeto vai se deslocar em X, Y e Z, por exemplo:

Dados os Pontos:

  • [3,2]
  • [1,0]
  • [4,5]
  • [10,20]

Aplicando uma translação de [3,5],  os novos pontos serão:

  • [6,7]
  • [4,5]
  • [7,10]
  • [13,25]

Após calcular os novos pontos, o software verifica os intervalos das séries, normaliza estes valores e calcula os pontos para exibição no monitor.

O software é bem simples, mas já me ajudou a estudar um pouco e quem sabe utilizá-lo na prova.

[download id=”7″]

[download id=”6″]

Para rodar o executável é necessário instalar o .net framework 3.5, gratuito, disponível no site da Microsoft: http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=en

Para trabalhar com os códigos fontes, utilizem o VS2008 Express Edition, que é gratuito.

1 comentário

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Please leave these two fields as-is:

Protected by Invisible Defender. Showed 403 to 757.023 bad guys.

 

This site uses Akismet to reduce spam. Learn how your comment data is processed.