42{
44 for (NSVGshape *shape = image->shapes; shape != NULL;
45 shape = shape->next) {
46 if (!(shape->flags & NSVG_FLAGS_VISIBLE)) continue;
48 if (shape->fill.type != NSVG_PAINT_NONE) {
49 for (NSVGpath *path = shape->paths; path != NULL;
50 path = path->next) {
51
52 polygon.
points.emplace_back(path->pts[0], path->pts[1]);
53 size_t path_size = (path->npts > 1) ?
54 static_cast<size_t>(path->npts - 1) : 0;
55 for (size_t i = 0; i < path_size; i += 3) {
56 float *p = &path->pts[i * 2];
57 Vec2f p1(p[0], p[1]), p2(p[2], p[3]), p3(p[4], p[5]),
58 p4(p[6], p[7]);
60 max_level);
61 }
62 if (path->closed && !polygon.
empty()) {
63 polygons.push_back(polygon);
65 }
66 }
67 }
69 polygons.push_back(polygon);
70 }
71 return polygons;
72}
bool empty() const
Definition MultiPoint.hpp:40