painter => Painter

This commit is contained in:
Konstantin Käfer
2014-01-20 11:53:50 +01:00
parent 66bac4dffd
commit 315efdb7f6
4 changed files with 21 additions and 21 deletions

View File

@@ -51,7 +51,7 @@ private:
private:
Settings& settings;
transform *transform;
painter *painter;
Painter painter;
int32_t min_zoom;
int32_t max_zoom;

View File

@@ -11,15 +11,15 @@ namespace llmr {
class transform;
class tile;
class painter {
class Painter {
public:
painter(class transform *transform, Settings& settings);
Painter(class transform *transform, Settings& settings);
// Make noncopyable
painter(const painter&) = delete;
painter(const painter&&) = delete;
painter &operator=(const painter&) = delete;
painter &operator=(const painter&&) = delete;
Painter(const Painter&) = delete;
Painter(const Painter&&) = delete;
Painter &operator=(const Painter&) = delete;
Painter &operator=(const Painter&&) = delete;
void setup();

View File

@@ -13,7 +13,7 @@ using namespace llmr;
Map::Map(Settings& settings)
: settings(settings),
transform(new class transform()),
painter(new class painter(transform, settings)),
painter(transform, settings),
min_zoom(0),
max_zoom(14) {
}
@@ -23,7 +23,7 @@ Map::~Map() {
}
void Map::setup() {
painter->setup();
painter.setup();
}
void Map::loadSettings() {
@@ -263,12 +263,12 @@ void Map::updateTiles() {
bool Map::render() {
transform->updateAnimations();
painter->clear();
painter.clear();
for (tile::ptr& tile : tiles) {
assert(tile);
if (tile->state == tile::ready) {
painter->render(tile);
painter.render(tile);
}
}

View File

@@ -27,7 +27,7 @@ GLshort tile_border_vertices[] = {
0, 0
};
painter::painter(class transform *transform, Settings& settings)
Painter::Painter(class transform *transform, Settings& settings)
: transform(transform),
settings(settings),
currentShader(NULL),
@@ -37,7 +37,7 @@ painter::painter(class transform *transform, Settings& settings)
}
void painter::setup() {
void Painter::setup() {
setupShaders();
assert(fillShader);
@@ -62,13 +62,13 @@ void painter::setup() {
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
}
void painter::setupShaders() {
void Painter::setupShaders() {
fillShader = new FillShader();
lineShader = new LineShader();
outlineShader = new OutlineShader();
}
void painter::teardown() {
void Painter::teardown() {
glDeleteBuffers(1, &tile_stencil_buffer);
if (fillShader) {
@@ -83,7 +83,7 @@ void painter::teardown() {
}
void painter::changeMatrix(const tile::ptr& tile) {
void Painter::changeMatrix(const tile::ptr& tile) {
assert(transform);
// Initialize projection matrix
@@ -96,7 +96,7 @@ void painter::changeMatrix(const tile::ptr& tile) {
mat4::multiply(matrix, projMatrix, mvMatrix);
}
void painter::drawClippingMask() {
void Painter::drawClippingMask() {
switchShader(lineShader);
glUniformMatrix4fv(lineShader->u_matrix, 1, GL_FALSE, matrix);
@@ -130,14 +130,14 @@ void painter::drawClippingMask() {
glColorMask(true, true, true, true);
}
void painter::clear() {
void Painter::clear() {
glClearColor(1.0f, 1.0f, 0.0f, 1.0f);
glClearStencil(0x0);
glStencilMask(0xFF);
glClear(GL_COLOR_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
}
void painter::render(const tile::ptr& tile) {
void Painter::render(const tile::ptr& tile) {
if (tile->state != tile::ready) {
return;
}
@@ -166,7 +166,7 @@ void painter::render(const tile::ptr& tile) {
}
}
void painter::renderDebug(const tile::ptr& tile) {
void Painter::renderDebug(const tile::ptr& tile) {
// draw tile outline
switchShader(lineShader);
glUniformMatrix4fv(lineShader->u_matrix, 1, GL_FALSE, matrix);
@@ -193,7 +193,7 @@ void painter::renderDebug(const tile::ptr& tile) {
/**
* @return boolean whether the shader was actually switched
*/
bool painter::switchShader(Shader *shader) {
bool Painter::switchShader(Shader *shader) {
if (currentShader != shader) {
glUseProgram(shader->program);