consolidate all repos to one for archive
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
#include "mainwindow.h"
|
||||
#include "ui_mainwindow.h"
|
||||
|
||||
#include <QFileDialog>
|
||||
#include <QImage>
|
||||
#include <QPicture>
|
||||
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
MainWindow::MainWindow(QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
ui(new Ui::MainWindow)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
connect(ui->actionOdpri,SIGNAL(triggered()),this,SLOT(nalozi()));
|
||||
}
|
||||
|
||||
MainWindow::~MainWindow()
|
||||
{
|
||||
delete ui;
|
||||
}
|
||||
|
||||
void MainWindow::nalozi(){
|
||||
slika = new QImage(QFileDialog::getOpenFileName(this,tr("Open Image"), ".", tr("Image Files (*.png *.jpg *.bmp)")));
|
||||
zrcalna = new QImage(*slika);
|
||||
crnobela = new QImage(*slika);
|
||||
zrcali();
|
||||
crnobelo();
|
||||
ui->label->setPixmap(QPixmap::fromImage(*slika));
|
||||
ui->label_2->setPixmap(QPixmap::fromImage(*crnobela));
|
||||
ui->label_3->setPixmap(QPixmap::fromImage(*zrcalna));
|
||||
}
|
||||
|
||||
/**
|
||||
* Uporabite naslednje metode:
|
||||
* QRgb pixel = slika->pixel(int i, int j);
|
||||
* int slika->width();
|
||||
* int slika->height();
|
||||
* zrcalna->setPixel(int i, int j, QRgb pixel);
|
||||
*
|
||||
* Spremenljivke:
|
||||
* slika - slika, ki jo naložite
|
||||
* zrcalna - zrcalna slika
|
||||
*/
|
||||
void MainWindow::zrcali(){
|
||||
for (int i=0; i < slika->width(); i++ ) {
|
||||
for (int j=0; j < slika->height(); j++ ) {
|
||||
QRgb pixel = slika->pixel(i, j);
|
||||
zrcalna->setPixel(slika->width() - i, j, pixel);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Uporabite naslednje metode:
|
||||
* QRgb pixel = slika->pixel(int i, int j);
|
||||
* int slika->width();
|
||||
* int slika->height();
|
||||
* QColor color(QRgb pixel);
|
||||
* int color.blue();
|
||||
* int color.red();
|
||||
* int color.green();
|
||||
* void color.setBlue(int x);
|
||||
* void color.setRed(int x);
|
||||
* void color.setGreen(int x);
|
||||
* crnobela->setPixel(int i, int j, QRgb pixel);
|
||||
* QRgb qRgb(int red,int green,int blue);
|
||||
*
|
||||
* Spremenljivke:
|
||||
* slika - slika, ki jo naložite
|
||||
* crnobela - črno bela slika
|
||||
*/
|
||||
void MainWindow::crnobelo(){
|
||||
for (int i=0; i < slika->width(); i++ ) {
|
||||
for (int j=0; j < slika->height(); j++ ) {
|
||||
QRgb pixel = slika->pixel(i, j);
|
||||
QColor color(pixel);
|
||||
int greyscale = (color.red() + color.green() + color.blue())/3;
|
||||
pixel = qRgb(greyscale,greyscale,greyscale);
|
||||
crnobela->setPixel(i, j, pixel);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user