ELEC2645 (2018/19) / Mbed 2 deprecated el17cd

Dependencies:   mbed

main.cpp

Committer:
el17cd
Date:
2019-02-23
Revision:
7:15543cb10a14
Parent:
6:75031d14fc0d
Child:
8:a667bc5050c1

File content as of revision 7:15543cb10a14:

/*
ELEC2645 Embedded Systems Project
School of Electronic & Electrical Engineering
University of Leeds
Name: Christopher Doel
Username: el17cd
Student ID Number: 201146223
Date: 22/02/19
*/

#include "mbed.h"
#include <vector>
#ifndef FACE_H
#define FACE_H
#include "Face.h"
#endif
#include "Rasturizer.h"
#include "Cube.h"
#include "Gamepad.h"


 Gamepad gamepad;
int main()
{
    
    gamepad.init();
    Rasturizer renderer;
    Cube cube1(-30,0,100,3);
    Cube cube2(30,0,100,3);
    Cube cube3(-30,0,50,3);
    Cube cube4(30,0,50,3);

    
    int i = 0;
    while(1) {
        renderer.clear();
        //if (i == 6)
        //    i = 0;
        for (int i = 0; i < 6; i++){
        renderer.drawFace(cube1.getFace(i));
        }
        for (int i = 0; i < 6; i++){
        renderer.drawFace(cube2.getFace(i));
        }
        for (int i = 0; i < 6; i++){
        renderer.drawFace(cube3.getFace(i));
        }
        for (int i = 0; i < 6; i++){
        renderer.drawFace(cube4.getFace(i));
        }
        

        Vector2D coord = gamepad.get_coord();
        cube1.translate(-coord.x*3,0,-coord.y*3);
        cube2.translate(-coord.x*3,0,-coord.y*3);
        cube3.translate(-coord.x*3,0,-coord.y*3);
        cube4.translate(-coord.x*3,0,-coord.y*3);
        
        
        if(gamepad.check_event(Gamepad::B_PRESSED) == true){ 
            cube1.rotateX(0.2);
            cube2.rotateX(0.2);
            cube3.rotateX(0.2);
            cube4.rotateX(0.2);
        }
        if( gamepad.check_event(Gamepad::X_PRESSED) == true){ 
            cube1.rotateX(-0.2);
            cube2.rotateX(-0.2);
            cube3.rotateX(-0.2);
            cube4.rotateX(-0.2);
        }

        renderer.refresh(); // refresh the LCD so the pixels appear
        wait_ms(1000/15);  // this gives a refresh rate of 10 frames per second
        //i++;
    }
}