3rd year group project. Electronic and Electrical Engineering. Heriot-Watt University. This is the code for the mbed for the Automatic Little Object Organiser (ALOO).
Dependencies: MCP23017 TCS3472_I2C WattBob_TextLCD mbed
Block.cpp@29:9c0339e3c593, 2015-12-01 (annotated)
- Committer:
- dreamselec
- Date:
- Tue Dec 01 22:56:08 2015 +0000
- Revision:
- 29:9c0339e3c593
- Parent:
- 26:bbcc25418ffa
- Child:
- 30:c0bc92d009fe
Set new haz block mode should work.
Added hardcoded other colour values.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dreamselec |
6:98fe30430194 | 1 | /* |
dreamselec |
6:98fe30430194 | 2 | * Block.cpp |
dreamselec |
6:98fe30430194 | 3 | * |
dreamselec |
6:98fe30430194 | 4 | * Created on: 16 Nov 2015 |
dreamselec |
6:98fe30430194 | 5 | * Author: chandansiyag |
dreamselec |
6:98fe30430194 | 6 | */ |
dreamselec |
6:98fe30430194 | 7 | |
dreamselec |
6:98fe30430194 | 8 | #include "Block.h" |
dreamselec |
6:98fe30430194 | 9 | |
dreamselec |
6:98fe30430194 | 10 | Colour::Colour(){ |
dreamselec |
6:98fe30430194 | 11 | setRed(0); |
dreamselec |
6:98fe30430194 | 12 | setBlue(0); |
dreamselec |
6:98fe30430194 | 13 | setGreen(0); |
dreamselec |
6:98fe30430194 | 14 | setAlpha(0); |
dreamselec |
6:98fe30430194 | 15 | } |
dreamselec |
6:98fe30430194 | 16 | |
dreamselec |
6:98fe30430194 | 17 | Colour::~Colour(){ |
dreamselec |
6:98fe30430194 | 18 | |
dreamselec |
6:98fe30430194 | 19 | } |
dreamselec |
6:98fe30430194 | 20 | |
dreamselec | 20:4e0f0944f28f | 21 | Colour::Colour(float components[4]){ |
dreamselec | 20:4e0f0944f28f | 22 | for (int i = 0; i < sizeof(components)/sizeof(*components); i++){ |
dreamselec | 20:4e0f0944f28f | 23 | this->components[i] = components[i]; |
dreamselec | 20:4e0f0944f28f | 24 | } |
dreamselec | 20:4e0f0944f28f | 25 | } |
dreamselec | 20:4e0f0944f28f | 26 | |
dreamselec |
6:98fe30430194 | 27 | Colour::Colour(const Colour& rhs){ |
dreamselec |
6:98fe30430194 | 28 | setRed(rhs.getRed()); |
dreamselec |
6:98fe30430194 | 29 | setBlue(rhs.getBlue()); |
dreamselec |
6:98fe30430194 | 30 | setGreen(rhs.getGreen()); |
dreamselec |
6:98fe30430194 | 31 | setAlpha(rhs.getAlpha()); |
dreamselec |
6:98fe30430194 | 32 | } |
dreamselec | 7:b6e31bfdb2af | 33 | |
dreamselec | 26:bbcc25418ffa | 34 | void Colour::printDescription(){ |
dreamselec | 26:bbcc25418ffa | 35 | // pc.printf("Red: %.3f, Green: %.3f, Blue: %.3f, Clear: %.3f\n", this->component[0], this->component[1], this->component[2], this->component[3]); |
dreamselec | 26:bbcc25418ffa | 36 | } |
dreamselec | 26:bbcc25418ffa | 37 | |
dreamselec | 7:b6e31bfdb2af | 38 | Block::Block(){ |
dreamselec | 7:b6e31bfdb2af | 39 | this->size = Small; |
dreamselec | 7:b6e31bfdb2af | 40 | this->minColour = Colour(); |
dreamselec | 20:4e0f0944f28f | 41 | this->averageColour = Colour(); |
dreamselec | 7:b6e31bfdb2af | 42 | this->maxColour = Colour(); |
dreamselec |
29:9c0339e3c593 | 43 | this->colour = Block::Red; |
dreamselec | 26:bbcc25418ffa | 44 | // this->minError = {0, 0, 0, 0}; |
dreamselec | 26:bbcc25418ffa | 45 | // this->maxError = {0, 0, 0, 0}; |
dreamselec | 7:b6e31bfdb2af | 46 | } |
dreamselec |
29:9c0339e3c593 | 47 | |
dreamselec |
29:9c0339e3c593 | 48 | Block::Block(Size size, BlockColour blockColour){ |
dreamselec |
29:9c0339e3c593 | 49 | this = Block(); |
dreamselec |
29:9c0339e3c593 | 50 | this->colour = blockColour; |
dreamselec |
29:9c0339e3c593 | 51 | this->size = size; |
dreamselec |
29:9c0339e3c593 | 52 | } |
dreamselec |
29:9c0339e3c593 | 53 | |
dreamselec | 7:b6e31bfdb2af | 54 | Block::Block(Size size) { |
dreamselec | 7:b6e31bfdb2af | 55 | // TODO Auto-generated constructor stub |
dreamselec | 7:b6e31bfdb2af | 56 | this->size = size; |
dreamselec | 7:b6e31bfdb2af | 57 | this->minColour = Colour(); |
dreamselec | 7:b6e31bfdb2af | 58 | this->maxColour = Colour(); |
dreamselec | 20:4e0f0944f28f | 59 | this->averageColour = Colour(); |
dreamselec | 26:bbcc25418ffa | 60 | // this->minError = {0, 0, 0, 0}; |
dreamselec | 26:bbcc25418ffa | 61 | // this->maxError = {0, 0, 0, 0}; |
dreamselec | 20:4e0f0944f28f | 62 | } |
dreamselec | 20:4e0f0944f28f | 63 | |
dreamselec | 20:4e0f0944f28f | 64 | Block::Block(Size size, Colour minColour, Colour maxColour, Colour averageColour){ |
dreamselec | 20:4e0f0944f28f | 65 | this->size = size; |
dreamselec | 20:4e0f0944f28f | 66 | this->minColour = Colour(minColour); |
dreamselec | 20:4e0f0944f28f | 67 | this->maxColour = Colour(maxColour); |
dreamselec | 20:4e0f0944f28f | 68 | this->averageColour = Colour(averageColour); |
dreamselec | 26:bbcc25418ffa | 69 | // this->minError = {0, 0, 0, 0}; |
dreamselec | 26:bbcc25418ffa | 70 | // this->maxError = {0, 0, 0, 0}; |
dreamselec | 7:b6e31bfdb2af | 71 | } |
dreamselec | 7:b6e31bfdb2af | 72 | |
dreamselec | 7:b6e31bfdb2af | 73 | Block::Block(const Block& rhs){ |
dreamselec | 7:b6e31bfdb2af | 74 | minColour = Colour(rhs.minColour); |
dreamselec | 7:b6e31bfdb2af | 75 | maxColour = Colour(rhs.maxColour); |
dreamselec | 20:4e0f0944f28f | 76 | averageColour = Colour(rhs.averageColour); |
dreamselec | 7:b6e31bfdb2af | 77 | size = rhs.size; |
dreamselec | 26:bbcc25418ffa | 78 | // minError = rhs.minError; |
dreamselec | 26:bbcc25418ffa | 79 | // maxError = rhs.maxError; |
dreamselec | 7:b6e31bfdb2af | 80 | } |
dreamselec | 7:b6e31bfdb2af | 81 | |
dreamselec | 7:b6e31bfdb2af | 82 | Block::~Block() { |
dreamselec | 7:b6e31bfdb2af | 83 | // TODO Auto-generated destructor stub |
dreamselec | 7:b6e31bfdb2af | 84 | } |
dreamselec | 7:b6e31bfdb2af | 85 | |
dreamselec | 26:bbcc25418ffa | 86 | void Block::printDescription(){ |
dreamselec | 26:bbcc25418ffa | 87 | |
dreamselec | 26:bbcc25418ffa | 88 | } |