TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

PRIMEIRO RELATÓRIO TÉCNICO DA DISCIPLINA LABORÁTORIO DE PROGRMAÇÃO DE COMPUTADORES II

Por:   •  16/5/2017  •  Relatório de pesquisa  •  1.018 Palavras (5 Páginas)  •  266 Visualizações

Página 1 de 5

RELATÓRIO TÉCNICO

CALCULO ÁREA POLIGONO

QT E C++

[pic 1]


[pic 2]

PRIMEIRO RELATÓRIO TÉCNICO DA DISCIPLINA LABORÁTORIO DE PROGRMAÇÃO DE COMPUTADORES II.

Identificação

Primeiro relatório técnico da Disciplina Laboratório de Programação de Computadores II, ministrada pelo professor Alberto Pena Lara.

Resumo

O assunto abordado neste relatório relaciona-se a um programa desenvolvido em Qt e com a linguagem de programação c++ que calcula a área de um polígono irregular do tipo convexo.

Introdução

Este relatório tem como objetivo apresentar o desenvolvimento de um programa utilizando a ferramenta Qt e a linguagem de programação c++. Este programa simples que calcula a área de um polígono irregular convexo tem o objetivo de preparar e aperfeiçoar o desenvolvimento de ferramentas gráficas utilizando o Qt e a linguagem c++. Grande motivo da utilização destes é que podemos compila-los para qualquer plataforma de sistema operacional, ou seja é multi-plataforma.

Desenvolvimento

Inicialmente analisamos o problema, que era calcular a área de um polígono irregular convexo recebendo como parâmetros os vértices do polígono. Como figura abaixo:

[pic 3]

Cada vértice corresponde as letras de A até E.

Depois analisamos que para fazermos o calculo seria necessário dividir o polígono em triângulos, onde utilizando uma formula de geometria analítica conseguiríamos calcular a área de cada triangulo e soma-los para obter a área total. Divisão conforme figura abaixo:

[pic 4]

A formula que utilizamos é calculado através do determinante utilizando os três vértices que formam cada um dos triângulos. Conforme imagem abaixo:

[pic 5]

Desta forma utilizando as coordenadas x e y de cada ponto conseguimos obter a área de cada triangulo e a soma destas áreas nos dá a área total do polígono.

Depois que elaboramos a forma que seria calculado a área partimos para a elaboração do algoritmo para que o calculo pudesse ser feito pelo nosso programa.

Definimos que receberíamos cada ponto, ou coordenadas de cada ponto e a partir da terceira coordenada já iriamos exibir a área ate aquele momento, do nosso polígono. Recebemos a primeira e armazenamos, depois a segunda e terceira depois o calculo da área e já exibimos.

Depois do algoritmo elaborado partimos para o desenho do formulário, da janela gráfica para o programa. Segue imagem abaixo:

[pic 6]

As coordenadas devem ser inseridas em x e y e depois o botão Adicionar deve ser pressionado, assim dizemos para nosso programa que a primeira coordenada foi adicionada e assim fazemos para todas as outras coordenadas, lembrando que a partir da terceira a área já irá aparecer em resultado.

Os arquivos que compões o programa utilizando Qt e c++ são:

  • AreaPoligono.pro
  • calculoarea.cpp
  • calculoarea.h
  • calculoarea.ui
  • main.cpp

O arquivo AreaPoligono.pro é o arquivo que agrupa todas as informações do projeto. O conteúdo deste não será exibido porque não fizemos nenhuma alteração.

O arquivo calculoarea.cpp é o arquivo que contém a implementação das classes, e as ações tomadas para para que nosso programa calcule a área. Segue o código abaixo:

#include "calculoarea.h"

#include "ui_calculoarea.h"

CalculoArea::CalculoArea(QWidget *parent) :

    QMainWindow(parent),

    ui(new Ui::CalculoArea)

{

    ui->setupUi(this);

    //faz a conexão do botão Adicionar com o metodo da classe

    connect(ui->btadd,SIGNAL(clicked()), this, SLOT(btAdiciona()));

    Area = 0;

}

CalculoArea::~CalculoArea()

{

    delete ui;

}

void CalculoArea::btAdiciona(){

    //Conta a quantidade de pontos que fora inseridos

    QString strPonto = ui->ednumponto->text();

    int numPonto = strPonto.toInt();

    numPonto++;

    strPonto = strPonto.number(numPonto);

    ui->ednumponto->setText(strPonto);

    //recebe os pontos digitados nos lineedits

    int pontox, pontoy;

    QString strPtox = ui->edptx->text();

    QString strPtoy = ui->edpty->text();

    pontox = strPtox.toInt();

    pontoy = strPtoy.toInt();

    //recebe primeiro ponto

...

Baixar como (para membros premium)  txt (6 Kb)   pdf (135.3 Kb)   docx (38.3 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com