Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <vector>
- #include <cctype>
- #include <string>
- #include <sstream>
- using namespace std;
- struct Spalva {
- int r, g, b;
- };
- struct Staciakampis {
- int x, y; // kairysis virsutinis kampas
- int dx, dy; // ilgis plotis
- Spalva s; // spalva
- };
- struct Piesinys {
- Spalva laukeliai[100][100];
- int dx, dy;
- Piesinys(){
- dx = 0;
- dy = 0;
- for(int i = 0; i < 100; ++i){
- for(int j = 0; j < 100; ++j){
- laukeliai[i][j].r = 255;
- laukeliai[i][j].g = 255;
- laukeliai[i][j].b = 255;
- }
- }
- }
- };
- Staciakampis gauti(string tekstas){
- Staciakampis st;
- stringstream ss;
- ss << tekstas;
- ss >> st.x >> st.y;
- ss >> st.dx >> st.dy;
- ss >> st.s.r >> st.s.g >> st.s.b;
- return st;
- }
- void spausdinti(Staciakampis st){
- //cout << st.x << "," << st.y << " ";
- //cout << st.dx << "," << st.dy << " ";
- //cout << st.s.r << "," << st.s.g << "," << st.s.b << endl;
- }
- void spausdinti(Piesinys p){
- ofstream out("U2.rez.txt");
- out << p.dy+1 << " " << p.dx+1 << endl;
- for(int j = 0; j <= p.dy; ++j){
- for(int i = 0; i <= p.dx; ++i){
- out << p.laukeliai[i][j].r << " ";
- out << p.laukeliai[i][j].g << " ";
- out << p.laukeliai[i][j].b << endl;
- }
- }
- out.close();
- }
- void uzdeti(Piesinys &p, Staciakampis s){
- for(int j = s.y; j < s.y+s.dy; ++j){
- for(int i = s.x; i < s.x+s.dx; ++i){
- if(i > p.dx)
- p.dx = i;
- if(j > p.dy)
- p.dy = j;
- //cout << i << " " << j << " " << p.dx << " " << p.dy << endl;
- p.laukeliai[i][j] = s.s;
- }
- }
- }
- int main(){
- ifstream in("U2.txt");
- //if(!in.is_open()){
- //cout << "Nepavyko atidaryti failo" << endl;
- //return 0;
- //}
- // nuskaitom dydi
- int eil;
- in >> eil;
- //cout << "Eiluciu " << eil << endl;
- string str;
- getline(in, str);
- // nuskaitom eilutes
- vector<Staciakampis> v;
- for(int i = 0; i < eil; ++i){
- getline(in, str);
- v.push_back(gauti(str));
- }
- Piesinys p;
- for(int i = 0; i < eil; ++i){
- //spausdinti(v[i]);
- uzdeti(p, v[i]);
- }
- spausdinti(p);
- //cout << endl << endl;
- //cout << "Pabaiga!" << endl;
- in.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement