Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. How to include .txt on Qt
Forum Updated to NodeBB v4.3 + New Features

How to include .txt on Qt

Scheduled Pinned Locked Moved Unsolved General and Desktop
196 Posts 11 Posters 142.0k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    Payx
    wrote on 24 Dec 2016, 21:50 last edited by
    #52

    Yes, but correct me if i'm wrong, it could be possible that it detect many colors under 100 right ?

    M 1 Reply Last reply 25 Dec 2016, 08:28
    0
    • P Payx
      24 Dec 2016, 21:50

      Yes, but correct me if i'm wrong, it could be possible that it detect many colors under 100 right ?

      M Offline
      M Offline
      mrjj
      Lifetime Qt Champion
      wrote on 25 Dec 2016, 08:28 last edited by
      #53

      @Payx
      its a value. How high or low u need it to be , depends
      on your application.

      1 Reply Last reply
      1
      • P Offline
        P Offline
        Payx
        wrote on 25 Dec 2016, 17:30 last edited by
        #54

        yes but i can't know exactly, thats why i put 100.

        The things i want its the minimum of all the value

        like a function who calcule all diffBlue+diffRed+diffGreen
        and return me the minimum

        1 Reply Last reply
        0
        • P Offline
          P Offline
          Payx
          wrote on 26 Dec 2016, 23:33 last edited by
          #55
          #include "mainwindow.h"
          #include "ui_mainwindow.h"
          #include <QPixmap>
          #include <QImage>
          #include <QFileDialog>
          #include <QColor>
          #include <QPoint>
          #include <QSize>
          #include <iostream>
          using namespace std;
          
          
          QColor Couleurdominante(const QImage& image, const QPoint& topLeft, const QSize& rectSize);
          void Remplissage(QImage& image, const QPoint& topLeft, const QSize& rectSize, const QColor& colour);
          
          
          MainWindow::MainWindow(QWidget *parent) :
          	QMainWindow(parent),
          	ui(new Ui::MainWindow)
          {
          		ui->setupUi(this);
          
          }
          
          
          MainWindow::~MainWindow()
          {
          	delete ui;
          }
          
          
          
          
          void MainWindow::on_push_clicked()
          {
          	QString fileName = QFileDialog::getOpenFileName(this,
          	tr("Open Image"), "/", tr("Image Files (*.png *.jpg *.bmp)"));
          	QPixmap pix(fileName);
          	ui->label->setPixmap(pix);
          	const QSize s = pix.size();
          	pixi = QImage(pix.toImage());
          
          	ui->label_2->setText( "Size: " + QString::number(s.width()) +" "+ QString::number(s.height()) );
          
          }
          
          void MainWindow::on_push2_clicked()
          {
          
          
          	for (int i=0;i<pixi.width();i+=z){
          						 for (int j=0;j<pixi.height();j+=z){
          							 k=k+0.06;
          							Remplissage(pixi,QPoint(i,j),QSize(z,z),Couleurdominante(pixi,QPoint(i,j),QSize(z,z)));
          
          		}
          	}
          
          	pixa=QPixmap::fromImage(pixi);
          	ui->label_3->setPixmap(pixa);
          	float a = k - 0.06*z;
          	ui->label_4->setText(QString::number(a));
          
          }
          
          
          
          
          void Remplissage(QImage& image, const QPoint& topLeft, const QSize& rectangle, const QColor& colour) {
          
          	int maxX = topLeft.x() + rectangle.width();
          	int maxY = topLeft.y() + rectangle.height();
          
          	for(int x = topLeft.x(); x < maxX; ++x) {
          		for(int y = topLeft.y(); y < maxY; ++y) {
          			image.setPixelColor(x, y, colour);
          			QMapIterator<QRgb, CostInfo>i;
          			while (i.hasNext()) {
          				i.next();
          				QColor BaseColor( i.key() );
          				if (Costs.contains( colour.rgb() ) || IsCloseColor(BaseColor, colour) )  {
          					CostInfo& ci = Costs[colour.rgb()];
          					int Cost = ci.Cost;
          					QPixmap pix( ci.ImageName );
          				}
          
          		}			}
          	}
          }
          
          
          QColor Couleurdominante(const QImage & image,const QPoint & topLeft, const QSize & rectangle)
          {
          		int rouge = 0, vert = 0, bleue = 0;
          
          		int  X = topLeft.x() + rectangle.width();
          		int  Y = topLeft.y() + rectangle.height();
          
          		for (int y = topLeft.y(); y < Y; y++)  {
          				for (int x = topLeft.x(); x < X; x++)   {
          						QRgb pixel = image.pixel(x, y);
          
          						rouge += qRed(pixel);
          						vert += qGreen(pixel);
          						bleue += qBlue(pixel);
          				}
          		}
          
          		int n = rectangle.width() * rectangle.height();
          
          		Q_ASSERT(n);
          		if (n <= 0)
          				return Qt::black;
          
          		return QColor(rouge / n, vert / n, bleue / n);
          }
          
          
          QMap<QRgb, CostInfo > Costs = {
          	{ QColor(255 , 0 , 0 ).rgb(), { "://fraise.png", 10 }},
          	{ QColor(0 , 255 , 0 ).rgb(), { "://balleverte.png", 20 }},
          	{ QColor(0 , 0 , 255 ).rgb(), { "://ballebleue.png", 20 }},
          	{ QColor(255 , 255 , 255 ).rgb(), { "://balleblanche.png", 20 }},
          	{ QColor(255 , 128 , 0 ).rgb(), { "://ballepeche.png", 20 }},
          	{ QColor(0 , 0 , 0 ).rgb(), { "://noir.png", 20 }},
          	{ QColor(102 , 51 , 0 ).rgb(), { "://marron.png", 20 }},
          	{ QColor(255 , 102 , 78 ).rgb(), { "://rose.png", 20 }},
          	{ QColor(0 , 204 , 204 ).rgb(), { "://turquoise.png", 20 }},
          	{ QColor(255 , 178 , 102 ).rgb(), { "://beige.png", 20 }},
          	{ QColor(76 , 0 , 153 ).rgb(), { "://violet.png", 20 }},
          	{ QColor(100 , 100 , 100 ).rgb(), { "://gris.png", 20 }},
          };
          
          bool IsCloseColor( QColor c1, QColor c2 ) {
          	int diffRed   = Math.abs(c1.red() - c2.red());
          	int diffGreen = Math.abs(c1.green() - c2.green());
          	int diffBlue  = Math.abs(c1.blue()  - c2.blue());
          
          	if (diffBlue+diffRed+diffGreen< 100){	/
          		return true;.
          		else
          				return false;
          
          
          	}
          }
          
          void MainWindow::on_verticalSlider_sliderMoved(int position)
          {
          	ui->verticalSlider->setRange(1,50);
          		z=position;
          }
          

          It said that CostInfo, Costs are not declared

          1 Reply Last reply
          0
          • M Offline
            M Offline
            mrjj
            Lifetime Qt Champion
            wrote on 26 Dec 2016, 23:55 last edited by mrjj
            #56

            Maybe you use it above where you define it or maybe u didnt show it how CostInfo is defined.

            1 Reply Last reply
            0
            • P Offline
              P Offline
              Payx
              wrote on 27 Dec 2016, 12:22 last edited by
              #57

              I defined my QMap here :

              QMap<QRgb, CostInfo > Costs = {
              	{ QColor(255 , 0 , 0 ).rgb(), { "://fraise.png", 10 }},
              	{ QColor(0 , 255 , 0 ).rgb(), { "://balleverte.png", 20 }},
              	{ QColor(0 , 0 , 255 ).rgb(), { "://ballebleue.png", 20 }},
              	{ QColor(255 , 255 , 255 ).rgb(), { "://balleblanche.png", 20 }},
              	{ QColor(255 , 128 , 0 ).rgb(), { "://ballepeche.png", 20 }},
              	{ QColor(0 , 0 , 0 ).rgb(), { "://noir.png", 20 }},
              	{ QColor(102 , 51 , 0 ).rgb(), { "://marron.png", 20 }},
              	{ QColor(255 , 102 , 78 ).rgb(), { "://rose.png", 20 }},
              	{ QColor(0 , 204 , 204 ).rgb(), { "://turquoise.png", 20 }},
              	{ QColor(255 , 178 , 102 ).rgb(), { "://beige.png", 20 }},
              	{ QColor(76 , 0 , 153 ).rgb(), { "://violet.png", 20 }},
              	{ QColor(100 , 100 , 100 ).rgb(), { "://gris.png", 20 }},
              };
              

              And this is a function call no ?

              QMapIterator<QRgb, CostInfo>i;
              
              1 Reply Last reply
              0
              • M Offline
                M Offline
                mrjj
                Lifetime Qt Champion
                wrote on 27 Dec 2016, 17:45 last edited by
                #58

                Hi
                And where is the definition for CostInfo ?

                1 Reply Last reply
                0
                • P Offline
                  P Offline
                  Payx
                  wrote on 28 Dec 2016, 01:54 last edited by
                  #59

                  i do not know, i thought CostInfo is the cost near the picture so i didnt needed to defined it no ?

                  F 1 Reply Last reply 28 Dec 2016, 02:48
                  0
                  • P Payx
                    28 Dec 2016, 01:54

                    i do not know, i thought CostInfo is the cost near the picture so i didnt needed to defined it no ?

                    F Offline
                    F Offline
                    Flotisable
                    wrote on 28 Dec 2016, 02:48 last edited by
                    #60

                    @Payx
                    the compiler only knows the fundamental types or types defined.
                    so you need to define CostInfo or compiler will give you an error.

                    P 1 Reply Last reply 28 Dec 2016, 03:16
                    0
                    • F Flotisable
                      28 Dec 2016, 02:48

                      @Payx
                      the compiler only knows the fundamental types or types defined.
                      so you need to define CostInfo or compiler will give you an error.

                      P Offline
                      P Offline
                      Payx
                      wrote on 28 Dec 2016, 03:16 last edited by
                      #61

                      @Flotisable Thank you,

                      so i have to define CostInfo as an int ?

                      F 1 Reply Last reply 28 Dec 2016, 03:46
                      0
                      • P Payx
                        28 Dec 2016, 03:16

                        @Flotisable Thank you,

                        so i have to define CostInfo as an int ?

                        F Offline
                        F Offline
                        Flotisable
                        wrote on 28 Dec 2016, 03:46 last edited by Flotisable
                        #62

                        @Payx
                        in your case, one of the value you give is { "://fraise.png", 10 }, which is composed of a string and a integer

                        it seems CostInfo should look like this

                        struct CostInfo
                        {
                          QString imageName;
                          int     cost;
                        };
                        
                        1 Reply Last reply
                        1
                        • P Offline
                          P Offline
                          Payx
                          wrote on 28 Dec 2016, 14:33 last edited by
                          #63

                          Okay understood how it works now.

                          Why it say that "Costs" is not declared, it is the name of the QMap right ?

                          M 1 Reply Last reply 28 Dec 2016, 16:55
                          0
                          • P Payx
                            28 Dec 2016, 14:33

                            Okay understood how it works now.

                            Why it say that "Costs" is not declared, it is the name of the QMap right ?

                            M Offline
                            M Offline
                            mrjj
                            Lifetime Qt Champion
                            wrote on 28 Dec 2016, 16:55 last edited by
                            #64

                            @Payx
                            Yes Costs is the QMap variable.

                            1 Reply Last reply
                            0
                            • P Offline
                              P Offline
                              Payx
                              wrote on 28 Dec 2016, 17:08 last edited by
                              #65

                              How do i declare a QMap ?

                              i tried

                              QMap<QRgb, CostInfo > Costs;
                              
                              M 1 Reply Last reply 28 Dec 2016, 17:14
                              0
                              • P Payx
                                28 Dec 2016, 17:08

                                How do i declare a QMap ?

                                i tried

                                QMap<QRgb, CostInfo > Costs;
                                
                                M Offline
                                M Offline
                                mrjj
                                Lifetime Qt Champion
                                wrote on 28 Dec 2016, 17:14 last edited by
                                #66

                                @Payx
                                Yes that is how you declare an empty QMap called Costs.

                                1 Reply Last reply
                                0
                                • P Offline
                                  P Offline
                                  Payx
                                  wrote on 28 Dec 2016, 18:47 last edited by
                                  #67

                                  Yes but it say that CostInfo is not declared again

                                  M 1 Reply Last reply 28 Dec 2016, 20:58
                                  0
                                  • P Payx
                                    28 Dec 2016, 18:47

                                    Yes but it say that CostInfo is not declared again

                                    M Offline
                                    M Offline
                                    mrjj
                                    Lifetime Qt Champion
                                    wrote on 28 Dec 2016, 20:58 last edited by
                                    #68

                                    @Payx
                                    CostInfo must be declared before you use it in QMap
                                    Where is it?
                                    you used to have struct CostInfo declaration.

                                    1 Reply Last reply
                                    0
                                    • P Offline
                                      P Offline
                                      Payx
                                      wrote on 28 Dec 2016, 21:00 last edited by
                                      #69

                                      I put my declaration of CostInfo in my .h

                                      M 1 Reply Last reply 28 Dec 2016, 21:05
                                      0
                                      • P Payx
                                        28 Dec 2016, 21:00

                                        I put my declaration of CostInfo in my .h

                                        M Offline
                                        M Offline
                                        mrjj
                                        Lifetime Qt Champion
                                        wrote on 28 Dec 2016, 21:05 last edited by
                                        #70

                                        @Payx
                                        and is that .h file included in the same file where u have the Qmap def ?

                                        1 Reply Last reply
                                        0
                                        • P Offline
                                          P Offline
                                          Payx
                                          wrote on 28 Dec 2016, 21:27 last edited by
                                          #71

                                          i got

                                          QMap<QRgb, CostInfo > Costs = {
                                          	{ QColor(255 , 0 , 0 ).rgb(), { "://fraise.png", 10 }},
                                          	{ QColor(0 , 255 , 0 ).rgb(), { "://balleverte.png", 20 }},
                                          	{ QColor(0 , 0 , 255 ).rgb(), { "://ballebleue.png", 20 }},
                                          	{ QColor(255 , 255 , 255 ).rgb(), { "://balleblanche.png", 20 }},
                                          	{ QColor(255 , 128 , 0 ).rgb(), { "://ballepeche.png", 20 }},
                                          	{ QColor(0 , 0 , 0 ).rgb(), { "://noir.png", 20 }},
                                          	{ QColor(102 , 51 , 0 ).rgb(), { "://marron.png", 20 }},
                                          	{ QColor(255 , 102 , 78 ).rgb(), { "://rose.png", 20 }},
                                          	{ QColor(0 , 204 , 204 ).rgb(), { "://turquoise.png", 20 }},
                                          	{ QColor(255 , 178 , 102 ).rgb(), { "://beige.png", 20 }},
                                          	{ QColor(76 , 0 , 153 ).rgb(), { "://violet.png", 20 }},
                                          	{ QColor(100 , 100 , 100 ).rgb(), { "://gris.png", 20 }},
                                          };
                                          

                                          in my .cpp

                                          and struct in my .h,

                                          do i paste "QMap<QRgb, CostInfo > Costs;" in my .cpp like my function or in my .h (sorry but i didnt understand ur question ^^)

                                          M 1 Reply Last reply 28 Dec 2016, 21:57
                                          0

                                          61/196

                                          28 Dec 2016, 03:16

                                          • Login

                                          • Login or register to search.
                                          61 out of 196
                                          • First post
                                            61/196
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved