summaryrefslogtreecommitdiff
path: root/src/renderer/fill_bucket.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/renderer/fill_bucket.cpp')
-rw-r--r--src/renderer/fill_bucket.cpp24
1 files changed, 10 insertions, 14 deletions
diff --git a/src/renderer/fill_bucket.cpp b/src/renderer/fill_bucket.cpp
index 73e6d8d029..24de51df50 100644
--- a/src/renderer/fill_bucket.cpp
+++ b/src/renderer/fill_bucket.cpp
@@ -11,10 +11,10 @@ struct geometry_too_long_exception : std::exception {};
using namespace llmr;
-FillBucket::FillBucket(const std::shared_ptr<FillBuffer>& buffer)
+FillBucket::FillBucket(FillBuffer& buffer)
: buffer(buffer),
- vertex_start(buffer->vertex_length()),
- elements_start(buffer->elements_length()),
+ vertex_start(buffer.vertex_length()),
+ elements_start(buffer.elements_length()),
length(0) {
}
@@ -41,14 +41,14 @@ void FillBucket::addGeometry(pbf& geom) {
}
for (const std::vector<std::pair<int16_t, int16_t>>& line : lines) {
- uint32_t vertex_start = buffer->vertex_length();
+ uint32_t vertex_start = buffer.vertex_length();
- buffer->addDegenerate();
+ buffer.addDegenerate();
for (const std::pair<int16_t, int16_t>& coord : line) {
- buffer->addCoordinate(coord.first, coord.second);
+ buffer.addCoordinate(coord.first, coord.second);
}
- uint32_t vertex_end = buffer->vertex_length();
+ uint32_t vertex_end = buffer.vertex_length();
if (vertex_end - vertex_start > 65535) {
throw geometry_too_long_exception();
@@ -76,23 +76,19 @@ void FillBucket::addGeometry(pbf& geom) {
assert(firstIndex + vertex_count - 1 < 65536);
- uint32_t elements_start = buffer->elements_length();
+ uint32_t elements_start = buffer.elements_length();
for (uint32_t i = 2; i < vertex_count; i++) {
- buffer->addElements(firstIndex, firstIndex + i - 1, firstIndex + i);
+ buffer.addElements(firstIndex, firstIndex + i - 1, firstIndex + i);
}
- uint32_t elements_end = buffer->elements_length();
+ uint32_t elements_end = buffer.elements_length();
uint32_t elements_count = elements_end - elements_start;
group.vertex_length += vertex_count;
group.elements_length += elements_count;
}
}
-void FillBucket::draw(const Style& style, const std::string& layerName) {
-
-}
-
void FillBucket::render(Painter& painter) {
// TODO: obtain the correct style information for this layer
FillStyle style;