Dependents:   Telecommande_prologue

Committer:
projetremote
Date:
Tue May 03 13:37:44 2011 +0000
Revision:
1:230bf719a4f0
Parent:
0:7e26ffa50bc4

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
projetremote 0:7e26ffa50bc4 1 #include "mbed.h"
projetremote 0:7e26ffa50bc4 2 #include "Screens.h"
projetremote 0:7e26ffa50bc4 3
projetremote 0:7e26ffa50bc4 4 Screens :: Screens(PinName Tx,PinName Rx,PinName rst){
projetremote 0:7e26ffa50bc4 5 ecran = new TFT_4DGL(p13,p14,p15);
projetremote 0:7e26ffa50bc4 6 ecran->baudrate(128000);
projetremote 0:7e26ffa50bc4 7 infos['baud']="128000";
projetremote 0:7e26ffa50bc4 8 }
projetremote 0:7e26ffa50bc4 9
projetremote 0:7e26ffa50bc4 10 Screens :: Screens(TFT_4DGL * p){
projetremote 0:7e26ffa50bc4 11 ecran = p;
projetremote 0:7e26ffa50bc4 12 ecran->baudrate(128000);
projetremote 0:7e26ffa50bc4 13 infos['baud']="128000";
projetremote 0:7e26ffa50bc4 14 }
projetremote 0:7e26ffa50bc4 15
projetremote 0:7e26ffa50bc4 16 void Screens :: background_color(int couleur){
projetremote 0:7e26ffa50bc4 17 ecran->background_color(couleur);
projetremote 0:7e26ffa50bc4 18 }
projetremote 0:7e26ffa50bc4 19
projetremote 0:7e26ffa50bc4 20 void Screens :: rectangle(int x1, int y1 , int x2, int y2, int color) {
projetremote 0:7e26ffa50bc4 21 //On regarde ce qu'il y avait avant de mettre le rectangle
projetremote 0:7e26ffa50bc4 22 int z = 0;
projetremote 0:7e26ffa50bc4 23 int back[abs(x1-x2) * abs(y1-y2)];
projetremote 0:7e26ffa50bc4 24 for(int i = x1 ; i <= x2; i++){
projetremote 0:7e26ffa50bc4 25 for(int j = y1; j <=y2; j++){
projetremote 0:7e26ffa50bc4 26 back[z]= ecran->read_pixel(i, j);
projetremote 0:7e26ffa50bc4 27 z++;
projetremote 0:7e26ffa50bc4 28 }
projetremote 0:7e26ffa50bc4 29 }
projetremote 0:7e26ffa50bc4 30 ecran->rectangle(x1,y1,x2,y2,color);
projetremote 0:7e26ffa50bc4 31 Rectangle un_rectangle(x1,y1,x2,y2,color,back);
projetremote 0:7e26ffa50bc4 32 tab_rectangles[sizeof(tab_rectangles)/sizeof(un_rectangle)] = un_rectangle;
projetremote 0:7e26ffa50bc4 33 }
projetremote 0:7e26ffa50bc4 34
projetremote 0:7e26ffa50bc4 35 void Screens :: deplace(Rectangle lerectangle, int x, int y){
projetremote 0:7e26ffa50bc4 36 int x1 = lerectangle.getX1();
projetremote 0:7e26ffa50bc4 37 int x2 = lerectangle.getX2();
projetremote 0:7e26ffa50bc4 38 int y1 = lerectangle.getY1();
projetremote 0:7e26ffa50bc4 39 int y2 = lerectangle.getY2();
projetremote 0:7e26ffa50bc4 40 int * val_color = lerectangle.getBack();
projetremote 0:7e26ffa50bc4 41 int z = 0;
projetremote 0:7e26ffa50bc4 42 for(int i = x1 ; i <= x2; i++){
projetremote 0:7e26ffa50bc4 43 for(int j = y1; j <=y2; j++){
projetremote 0:7e26ffa50bc4 44 ecran->pixel(i,j,val_color[z]);
projetremote 0:7e26ffa50bc4 45 z++;
projetremote 0:7e26ffa50bc4 46 }
projetremote 0:7e26ffa50bc4 47 }
projetremote 0:7e26ffa50bc4 48 }
projetremote 0:7e26ffa50bc4 49
projetremote 0:7e26ffa50bc4 50 void Screens :: baudrate(int bauds){
projetremote 0:7e26ffa50bc4 51 ecran->baudrate(bauds);
projetremote 0:7e26ffa50bc4 52 infos['baud']=(char*)bauds;
projetremote 0:7e26ffa50bc4 53 }