Graphical demo for the LPC4088 Experiment Base Board with one of the Display Expansion Kits. This demo shows a rotating 3D cube with and without textures.
Graphics.h@0:c828045bbe69, 2014-10-03 (annotated)
- Committer:
- embeddedartists
- Date:
- Fri Oct 03 12:48:37 2014 +0000
- Revision:
- 0:c828045bbe69
First version.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
embeddedartists | 0:c828045bbe69 | 1 | |
embeddedartists | 0:c828045bbe69 | 2 | #ifndef GRAPHICS_H |
embeddedartists | 0:c828045bbe69 | 3 | #define GRAPHICS_H |
embeddedartists | 0:c828045bbe69 | 4 | |
embeddedartists | 0:c828045bbe69 | 5 | /** |
embeddedartists | 0:c828045bbe69 | 6 | * LcdController example |
embeddedartists | 0:c828045bbe69 | 7 | * |
embeddedartists | 0:c828045bbe69 | 8 | * @code |
embeddedartists | 0:c828045bbe69 | 9 | * #include "mbed.h" |
embeddedartists | 0:c828045bbe69 | 10 | * #include "LcdController.h" |
embeddedartists | 0:c828045bbe69 | 11 | * |
embeddedartists | 0:c828045bbe69 | 12 | * LcdController::Config innolux( |
embeddedartists | 0:c828045bbe69 | 13 | * 45, |
embeddedartists | 0:c828045bbe69 | 14 | * 17, |
embeddedartists | 0:c828045bbe69 | 15 | * 2, |
embeddedartists | 0:c828045bbe69 | 16 | * 800, |
embeddedartists | 0:c828045bbe69 | 17 | * 22, |
embeddedartists | 0:c828045bbe69 | 18 | * 22, |
embeddedartists | 0:c828045bbe69 | 19 | * 2, |
embeddedartists | 0:c828045bbe69 | 20 | * 480, |
embeddedartists | 0:c828045bbe69 | 21 | * false, |
embeddedartists | 0:c828045bbe69 | 22 | * false, |
embeddedartists | 0:c828045bbe69 | 23 | * true, |
embeddedartists | 0:c828045bbe69 | 24 | * true, |
embeddedartists | 0:c828045bbe69 | 25 | * true, |
embeddedartists | 0:c828045bbe69 | 26 | * LcdController::Bpp_16_565, |
embeddedartists | 0:c828045bbe69 | 27 | * 36000000, |
embeddedartists | 0:c828045bbe69 | 28 | * LcdController::Tft, |
embeddedartists | 0:c828045bbe69 | 29 | * false); |
embeddedartists | 0:c828045bbe69 | 30 | * |
embeddedartists | 0:c828045bbe69 | 31 | * int main(void) { |
embeddedartists | 0:c828045bbe69 | 32 | * LcdController lcd; |
embeddedartists | 0:c828045bbe69 | 33 | * |
embeddedartists | 0:c828045bbe69 | 34 | * lcd.open(&innolux); |
embeddedartists | 0:c828045bbe69 | 35 | * lcd.setFrameBuffer(frameBuffer); |
embeddedartists | 0:c828045bbe69 | 36 | * lcd.setPower(true); |
embeddedartists | 0:c828045bbe69 | 37 | * |
embeddedartists | 0:c828045bbe69 | 38 | * // draw on the frame buffer |
embeddedartists | 0:c828045bbe69 | 39 | * ... |
embeddedartists | 0:c828045bbe69 | 40 | * } |
embeddedartists | 0:c828045bbe69 | 41 | * @endcode |
embeddedartists | 0:c828045bbe69 | 42 | */ |
embeddedartists | 0:c828045bbe69 | 43 | class Graphics { |
embeddedartists | 0:c828045bbe69 | 44 | public: |
embeddedartists | 0:c828045bbe69 | 45 | |
embeddedartists | 0:c828045bbe69 | 46 | Graphics(uint16_t *pFrmBuf, uint16_t dispWidth, uint16_t dispHeight); |
embeddedartists | 0:c828045bbe69 | 47 | |
embeddedartists | 0:c828045bbe69 | 48 | void setFrameBuffer( uint16_t *pFrmBuf ); |
embeddedartists | 0:c828045bbe69 | 49 | void put_line(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int16_t color); |
embeddedartists | 0:c828045bbe69 | 50 | void put_circle( int32_t cx, int32_t cy, int16_t color, int32_t radius, int32_t Filled ); |
embeddedartists | 0:c828045bbe69 | 51 | void put_dot( int32_t cx, int32_t cy, int16_t color ); |
embeddedartists | 0:c828045bbe69 | 52 | |
embeddedartists | 0:c828045bbe69 | 53 | protected: |
embeddedartists | 0:c828045bbe69 | 54 | uint16_t windowX; |
embeddedartists | 0:c828045bbe69 | 55 | uint16_t windowY; |
embeddedartists | 0:c828045bbe69 | 56 | uint16_t *pFrmBuf; |
embeddedartists | 0:c828045bbe69 | 57 | |
embeddedartists | 0:c828045bbe69 | 58 | int32_t abs(int32_t v1) const; |
embeddedartists | 0:c828045bbe69 | 59 | |
embeddedartists | 0:c828045bbe69 | 60 | virtual void plot4points( int32_t cx, int32_t cy, int32_t x, int32_t y, int16_t color, int32_t Filled ); |
embeddedartists | 0:c828045bbe69 | 61 | void plot8points( int32_t cx, int32_t cy, int32_t x, int32_t y, int16_t color, int32_t Filled ); |
embeddedartists | 0:c828045bbe69 | 62 | |
embeddedartists | 0:c828045bbe69 | 63 | }; |
embeddedartists | 0:c828045bbe69 | 64 | |
embeddedartists | 0:c828045bbe69 | 65 | #endif |
embeddedartists | 0:c828045bbe69 | 66 | |
embeddedartists | 0:c828045bbe69 | 67 | |
embeddedartists | 0:c828045bbe69 | 68 |