Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Fork of el17ajf by
Graphics/Graphics.cpp
- Committer:
- el17ajf
- Date:
- 2019-03-17
- Revision:
- 11:fba7d54fd36b
- Parent:
- 10:5762d7fae033
- Child:
- 12:beb0d7632531
File content as of revision 11:fba7d54fd36b:
#include "Graphics.h" N5110 * Graphics::lcd; void Graphics::init() { lcd = new N5110(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); lcd->init(); lcd->setContrast(0.5); } void Graphics::deinit() { delete lcd; } void Graphics::clear() { lcd->clear(); } void Graphics::render() { lcd->refresh(); } void Graphics::drawPoint(int x, int y) { lcd->setPixel(x, y, true); } void Graphics::drawLine(int x1, int y1, int x2, int y2) { lcd->drawLine(x1, y1, x2, y2, 1); } void Graphics::drawDottedLine(int x1, int y1, int x2, int y2) { lcd->drawLine( y1, x1, y2, x2, 2 // dotted ); } void Graphics::drawBox(int x1, int y1, int x2, int y2) { Graphics::drawLine(x1, y1, x2, y1); Graphics::drawLine(x2, y1, x2, y2); Graphics::drawLine(x2, y2, x1, y2); Graphics::drawLine(x1, y2, x1, y1); } void Graphics::drawBlock(int grid_x, int grid_y) { // screen coords int x = gridYToScreenX(grid_y); int y = gridXToScreenY(grid_x); Graphics::drawBox(x, y, x + 3, y - 3); Graphics::drawPoint(x + 2, y - 2); } void Graphics::drawBorder() { Graphics::drawDottedLine(0, 0, 0, SCREEN_HEIGHT - 1); Graphics::drawDottedLine(1, 1, 1, SCREEN_HEIGHT - 2); Graphics::drawDottedLine(0, SCREEN_HEIGHT - 1, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1); Graphics::drawDottedLine(1, SCREEN_HEIGHT - 2, SCREEN_WIDTH - 2, SCREEN_HEIGHT - 2); Graphics::drawDottedLine(SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1, SCREEN_WIDTH - 1, 0); Graphics::drawDottedLine(SCREEN_WIDTH - 2, SCREEN_HEIGHT - 2, SCREEN_WIDTH - 2, 1); } int Graphics::gridYToScreenX(int grid_y) { return grid_y * BLOCK_SIZE + BORDER_SIZE; } int Graphics::gridXToScreenY(int grid_x) { return SCREEN_WIDTH - (grid_x * BLOCK_SIZE) - BORDER_SIZE; }