
Shows how to use the display. Draws circles that bounce around on the display.
Dependencies: DmTftLibrary mbed
BubbleDemo.h@0:70db0a4adfce, 2014-05-20 (annotated)
- Committer:
- displaymodule
- Date:
- Tue May 20 15:33:57 2014 +0000
- Revision:
- 0:70db0a4adfce
First version
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
displaymodule | 0:70db0a4adfce | 1 | |
displaymodule | 0:70db0a4adfce | 2 | #ifndef BUBBLEDEMO_H |
displaymodule | 0:70db0a4adfce | 3 | #define BUBBLEDEMO_H |
displaymodule | 0:70db0a4adfce | 4 | |
displaymodule | 0:70db0a4adfce | 5 | #include "DmTftBase.h" |
displaymodule | 0:70db0a4adfce | 6 | |
displaymodule | 0:70db0a4adfce | 7 | class BubbleDemo { |
displaymodule | 0:70db0a4adfce | 8 | public: |
displaymodule | 0:70db0a4adfce | 9 | |
displaymodule | 0:70db0a4adfce | 10 | enum Constants { |
displaymodule | 0:70db0a4adfce | 11 | NumBalls = 4 // 17 |
displaymodule | 0:70db0a4adfce | 12 | }; |
displaymodule | 0:70db0a4adfce | 13 | |
displaymodule | 0:70db0a4adfce | 14 | /** Set the address of the frame buffer to use. |
displaymodule | 0:70db0a4adfce | 15 | * |
displaymodule | 0:70db0a4adfce | 16 | * It is the content of the frame buffer that is shown on the |
displaymodule | 0:70db0a4adfce | 17 | * display. All the drawing on the frame buffer can be done |
displaymodule | 0:70db0a4adfce | 18 | * 'offline' and whenever it should be shown this function |
displaymodule | 0:70db0a4adfce | 19 | * can be called with the address of the offline frame buffer. |
displaymodule | 0:70db0a4adfce | 20 | * |
displaymodule | 0:70db0a4adfce | 21 | * @param pFrameBuf Pointer to the frame buffer, which must be |
displaymodule | 0:70db0a4adfce | 22 | * 3 times as big as the frame size (for tripple |
displaymodule | 0:70db0a4adfce | 23 | * buffering). |
displaymodule | 0:70db0a4adfce | 24 | * dispWidth The width of the display (in pixels). |
displaymodule | 0:70db0a4adfce | 25 | * dispHeight The height of the display (in pixels). |
displaymodule | 0:70db0a4adfce | 26 | * loops Number of loops in the demo code. |
displaymodule | 0:70db0a4adfce | 27 | * delayMs Delay in milliseconds between schreen updates. |
displaymodule | 0:70db0a4adfce | 28 | * |
displaymodule | 0:70db0a4adfce | 29 | * @returns |
displaymodule | 0:70db0a4adfce | 30 | * none |
displaymodule | 0:70db0a4adfce | 31 | */ |
displaymodule | 0:70db0a4adfce | 32 | BubbleDemo(DmTftBase* display, uint16_t dispWidth, uint16_t dispHeight); |
displaymodule | 0:70db0a4adfce | 33 | |
displaymodule | 0:70db0a4adfce | 34 | void run(uint32_t loops, uint32_t delayMs); |
displaymodule | 0:70db0a4adfce | 35 | |
displaymodule | 0:70db0a4adfce | 36 | private: |
displaymodule | 0:70db0a4adfce | 37 | int32_t windowX; |
displaymodule | 0:70db0a4adfce | 38 | int32_t windowY; |
displaymodule | 0:70db0a4adfce | 39 | |
displaymodule | 0:70db0a4adfce | 40 | DmTftBase* tft; |
displaymodule | 0:70db0a4adfce | 41 | |
displaymodule | 0:70db0a4adfce | 42 | uint8_t i; |
displaymodule | 0:70db0a4adfce | 43 | uint8_t j; |
displaymodule | 0:70db0a4adfce | 44 | |
displaymodule | 0:70db0a4adfce | 45 | float x[NumBalls]; |
displaymodule | 0:70db0a4adfce | 46 | float y[NumBalls]; |
displaymodule | 0:70db0a4adfce | 47 | uint8_t r[NumBalls]; |
displaymodule | 0:70db0a4adfce | 48 | |
displaymodule | 0:70db0a4adfce | 49 | float oldX[NumBalls]; |
displaymodule | 0:70db0a4adfce | 50 | float oldY[NumBalls]; |
displaymodule | 0:70db0a4adfce | 51 | |
displaymodule | 0:70db0a4adfce | 52 | float velX[NumBalls]; |
displaymodule | 0:70db0a4adfce | 53 | float velY[NumBalls]; |
displaymodule | 0:70db0a4adfce | 54 | |
displaymodule | 0:70db0a4adfce | 55 | uint8_t red[NumBalls]; |
displaymodule | 0:70db0a4adfce | 56 | uint8_t green[NumBalls]; |
displaymodule | 0:70db0a4adfce | 57 | uint8_t blue[NumBalls]; |
displaymodule | 0:70db0a4adfce | 58 | |
displaymodule | 0:70db0a4adfce | 59 | |
displaymodule | 0:70db0a4adfce | 60 | void initialize(); |
displaymodule | 0:70db0a4adfce | 61 | void collision(); |
displaymodule | 0:70db0a4adfce | 62 | void borders(); |
displaymodule | 0:70db0a4adfce | 63 | void draw(); |
displaymodule | 0:70db0a4adfce | 64 | }; |
displaymodule | 0:70db0a4adfce | 65 | |
displaymodule | 0:70db0a4adfce | 66 | #endif /* BUBBLEDEMO_H */ |
displaymodule | 0:70db0a4adfce | 67 | |
displaymodule | 0:70db0a4adfce | 68 |