mirror of
https://github.com/tumic0/GPXSee.git
synced 2024-12-05 00:39:09 +01:00
Compare commits
2 Commits
cf81a90865
...
e351eb6370
Author | SHA1 | Date | |
---|---|---|---|
e351eb6370 | |||
81e967f20d |
@ -497,6 +497,9 @@ int MapData::level(int zoom) const
|
|||||||
|
|
||||||
void MapData::points(const RectC &rect, int zoom, QList<Point> *list)
|
void MapData::points(const RectC &rect, int zoom, QList<Point> *list)
|
||||||
{
|
{
|
||||||
|
if (!rect.isValid())
|
||||||
|
return;
|
||||||
|
|
||||||
int l(level(zoom));
|
int l(level(zoom));
|
||||||
PointCTX ctx(this, rect, zoom, list);
|
PointCTX ctx(this, rect, zoom, list);
|
||||||
double min[2], max[2];
|
double min[2], max[2];
|
||||||
@ -528,6 +531,9 @@ void MapData::points(const VectorTile *tile, const RectC &rect, int zoom,
|
|||||||
|
|
||||||
void MapData::paths(const RectC &rect, int zoom, QList<Path> *list)
|
void MapData::paths(const RectC &rect, int zoom, QList<Path> *list)
|
||||||
{
|
{
|
||||||
|
if (!rect.isValid())
|
||||||
|
return;
|
||||||
|
|
||||||
int l(level(zoom));
|
int l(level(zoom));
|
||||||
PathCTX ctx(this, rect, zoom, list);
|
PathCTX ctx(this, rect, zoom, list);
|
||||||
double min[2], max[2];
|
double min[2], max[2];
|
||||||
|
@ -200,17 +200,17 @@ QPainterPath RasterTile::painterPath(const Polygon &polygon, bool curve) const
|
|||||||
{
|
{
|
||||||
QPainterPath path;
|
QPainterPath path;
|
||||||
|
|
||||||
|
if (curve) {
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 13, 0)
|
#if QT_VERSION >= QT_VERSION_CHECK(5, 13, 0)
|
||||||
int size = 0;
|
int size = 0;
|
||||||
for (int i = 0; i < polygon.size(); i++)
|
for (int i = 0; i < polygon.size(); i++)
|
||||||
size += polygon.at(i).size();
|
size += polygon.at(i).size();
|
||||||
path.reserve(size);
|
path.reserve(size);
|
||||||
#endif // QT 5.13
|
#endif // QT 5.13
|
||||||
|
|
||||||
for (int i = 0; i < polygon.size(); i++) {
|
for (int i = 0; i < polygon.size(); i++) {
|
||||||
const QVector<Coordinates> &subpath = polygon.at(i);
|
const QVector<Coordinates> &subpath = polygon.at(i);
|
||||||
|
|
||||||
if (curve) {
|
|
||||||
QPointF p1(ll2xy(subpath.first()));
|
QPointF p1(ll2xy(subpath.first()));
|
||||||
QPointF p2(0, 0);
|
QPointF p2(0, 0);
|
||||||
QPointF p3(0, 0);
|
QPointF p3(0, 0);
|
||||||
@ -223,7 +223,11 @@ QPainterPath RasterTile::painterPath(const Polygon &polygon, bool curve) const
|
|||||||
p1 = p3;
|
p1 = p3;
|
||||||
}
|
}
|
||||||
path.quadTo(p2, p3);
|
path.quadTo(p2, p3);
|
||||||
} else {
|
}
|
||||||
|
} else {
|
||||||
|
for (int i = 0; i < polygon.size(); i++) {
|
||||||
|
const QVector<Coordinates> &subpath = polygon.at(i);
|
||||||
|
|
||||||
QVector<QPointF> p(subpath.size());
|
QVector<QPointF> p(subpath.size());
|
||||||
for (int j = 0; j < subpath.size(); j++)
|
for (int j = 0; j < subpath.size(); j++)
|
||||||
p[j] = ll2xy(subpath.at(j));
|
p[j] = ll2xy(subpath.at(j));
|
||||||
|
@ -211,9 +211,10 @@ void MapsforgeMap::draw(QPainter *painter, const QRectF &rect, Flags flags)
|
|||||||
_data.points(pointRectD.toRectC(_projection, 20), _zoom,
|
_data.points(pointRectD.toRectC(_projection, 20), _zoom,
|
||||||
&points);
|
&points);
|
||||||
|
|
||||||
tiles.append(RasterTile(_projection, _transform, &_style, _zoom,
|
if (paths.size() || points.size())
|
||||||
QRect(ttl, QSize(_data.tileSize(), _data.tileSize())),
|
tiles.append(RasterTile(_projection, _transform, &_style,
|
||||||
_tileRatio, paths, points));
|
_zoom, QRect(ttl, QSize(_data.tileSize(), _data.tileSize())),
|
||||||
|
_tileRatio, paths, points));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user