1
0
mirror of https://github.com/tumic0/GPXSee.git synced 2025-06-27 11:39:16 +02:00

Use SVG Maki icos instead of PNGs

This commit is contained in:
2024-02-06 22:36:28 +01:00
parent a3bac33bf4
commit fe70b31212
165 changed files with 616 additions and 247 deletions

View File

@ -18,9 +18,9 @@ static const float C1 = 0.866025f; /* sqrt(3)/2 */
static const QColor tsslptPen = QColor("#eb49eb");
static const QColor tsslptBrush = QColor("#80eb49eb");
static const Style *style()
static const Style *style(qreal ratio)
{
static ENC::Style s;
static ENC::Style s(ratio);
return &s;
}
@ -412,7 +412,7 @@ RasterTile::RasterTile(const Projection &proj, const Transform &transform,
_zoomRange(zoomRange), _rect(rect), _ratio(ratio),
_pixmap(rect.width() * ratio, rect.height() * ratio), _valid(false)
{
_style = style();
_style = style(ratio);
}
RasterTile::RasterTile(const Projection &proj, const Transform &transform,
@ -422,5 +422,5 @@ RasterTile::RasterTile(const Projection &proj, const Transform &transform,
_zoomRange(zoomRange), _rect(rect), _ratio(ratio),
_pixmap(rect.width() * ratio, rect.height() * ratio), _valid(false)
{
_style = style();
_style = style(ratio);
}

View File

@ -1,12 +1,15 @@
#include <QPainter>
#include "common/util.h"
#include "style.h"
using namespace ENC;
using namespace Util;
static QImage railroad()
static QImage railroad(qreal ratio)
{
QImage img(16, 4, QImage::Format_ARGB32_Premultiplied);
img.fill(Qt::black);
QImage img(16 * ratio, 4 * ratio, QImage::Format_ARGB32_Premultiplied);
img.setDevicePixelRatio(ratio);
img.fill(QColor("#717171"));
QPainter p(&img);
p.setPen(QPen(Qt::white, 2));
p.drawLine(9, 2, 15, 2);
@ -134,7 +137,7 @@ void Style::polygonStyle()
<< TYPE(PIPARE) << TYPE(PRCARE) << SUBTYPE(MARKUL, 3) << TYPE(CONZNE);
}
void Style::lineStyle()
void Style::lineStyle(qreal ratio)
{
_lines[TYPE(BUISGL)] = Line(QPen(QColor("#966118"), 1.5));
_lines[TYPE(DEPCNT)] = Line(QPen(QColor("#659aef"), 1, Qt::SolidLine));
@ -165,7 +168,7 @@ void Style::lineStyle()
_lines[TYPE(FERYRT)].setTextFontSize(Small);
_lines[TYPE(I_FERYRT)] = Line(QImage(":/marine/ferry-line.png"));
_lines[TYPE(I_FERYRT)].setTextFontSize(Small);
_lines[TYPE(RAILWY)] = Line(railroad());
_lines[TYPE(RAILWY)] = Line(railroad(ratio));
_lines[TYPE(ROADWY)] = Line(QPen(QColor("#000000"), 2, Qt::SolidLine));
_lines[TYPE(GATCON)] = Line(QPen(QColor("#000000"), 2, Qt::SolidLine));
_lines[TYPE(I_GATCON)] = Line(QPen(QColor("#000000"), 2, Qt::SolidLine));
@ -185,7 +188,7 @@ void Style::lineStyle()
_lines[TYPE(CANALS)] = Line(QPen(QColor("#9fc4e1"), 2));
}
void Style::pointStyle()
void Style::pointStyle(qreal ratio)
{
_points[SUBTYPE(BUAARE, 1)].setTextFontSize(Large);
_points[SUBTYPE(BUAARE, 5)].setTextFontSize(Large);
@ -299,34 +302,49 @@ void Style::pointStyle()
_points[TYPE(SLCONS)] = Point(QImage(":/marine/construction.png"), Small);
_points[TYPE(CURENT)] = Point(QImage(":/marine/current.png"));
_points[SUBTYPE(SMCFAC, 7)] = Point(QImage(":/POI/restaurant-11.png"), Small);
_points[SUBTYPE(SMCFAC, 11)] = Point(QImage(":/POI/pharmacy-11.png"), Small);
_points[SUBTYPE(SMCFAC, 12)] = Point(QImage(":/POI/drinking-water-11.png"),
_points[SUBTYPE(SMCFAC, 7)] = Point(svg2img(":/POI/restaurant-11.svg",
ratio), Small);
_points[SUBTYPE(SMCFAC, 11)] = Point(svg2img(":/POI/pharmacy-11.svg",
ratio), Small);
_points[SUBTYPE(SMCFAC, 12)] = Point(svg2img(":/POI/drinking-water-11.svg",
ratio), Small);
_points[SUBTYPE(SMCFAC, 13)] = Point(svg2img(":/POI/fuel-11.svg", ratio),
Small);
_points[SUBTYPE(SMCFAC, 13)] = Point(QImage(":/POI/fuel-11.png"), Small);
_points[SUBTYPE(SMCFAC, 18)] = Point(QImage(":/POI/toilet-11.png"), Small);
_points[SUBTYPE(SMCFAC, 20)] = Point(QImage(":/POI/telephone-11.png"), Small);
_points[SUBTYPE(SMCFAC, 22)] = Point(QImage(":/POI/parking-11.png"), Small);
_points[SUBTYPE(SMCFAC, 25)] = Point(QImage(":/POI/campsite-11.png"), Small);
_points[SUBTYPE(SMCFAC, 18)] = Point(svg2img(":/POI/toilet-11.svg", ratio),
Small);
_points[SUBTYPE(SMCFAC, 20)] = Point(svg2img(":/POI/telephone-11.svg",
ratio), Small);
_points[SUBTYPE(SMCFAC, 22)] = Point(svg2img(":/POI/parking-11.svg", ratio),
Small);
_points[SUBTYPE(SMCFAC, 25)] = Point(svg2img(":/POI/campsite-11.svg",
ratio), Small);
_points[TYPE(BUISGL)] = Point(QImage(":/marine/building.png"), Small);
_points[SUBTYPE(BUISGL, 2)] = Point(QImage(":/POI/harbor-11.png"), Small);
_points[SUBTYPE(BUISGL, 5)] = Point(QImage(":/POI/hospital-11.png"), Small);
_points[SUBTYPE(BUISGL, 6)] = Point(QImage(":/POI/post-11.png"), Small);
_points[SUBTYPE(BUISGL, 7)] = Point(QImage(":/POI/lodging-11.png"), Small);
_points[SUBTYPE(BUISGL, 9)] = Point(QImage(":/POI/police-11.png"), Small);
_points[SUBTYPE(BUISGL, 13)] = Point(QImage(":/POI/bank-11.png"), Small);
_points[SUBTYPE(BUISGL, 19)] = Point(QImage(":/POI/school-11.png"), Small);
_points[SUBTYPE(BUISGL, 20)] = Point(QImage(":/POI/religious-christian-11.png"),
_points[SUBTYPE(BUISGL, 2)] = Point(svg2img(":/POI/harbor-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 22)] = Point(QImage(":/POI/religious-jewish-11.png"),
_points[SUBTYPE(BUISGL, 5)] = Point(svg2img(":/POI/hospital-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 26)] = Point(QImage(":/POI/religious-muslim-11.png"),
_points[SUBTYPE(BUISGL, 6)] = Point(svg2img(":/POI/post-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 7)] = Point(svg2img(":/POI/lodging-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 9)] = Point(svg2img(":/POI/police-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 13)] = Point(svg2img(":/POI/bank-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 19)] = Point(svg2img(":/POI/school-11.svg", ratio),
Small);
_points[SUBTYPE(BUISGL, 20)] = Point(svg2img(":/POI/religious-christian-11.svg",
ratio), Small);
_points[SUBTYPE(BUISGL, 22)] = Point(svg2img(":/POI/religious-jewish-11.svg",
ratio), Small);
_points[SUBTYPE(BUISGL, 26)] = Point(svg2img(":/POI/religious-muslim-11.svg",
ratio), Small);
_points[SUBTYPE(BUISGL, 33)] = Point(QImage(":/marine/pylon.png"), Small);
_points[SUBTYPE(BUISGL, 42)] = Point(QImage(":/POI/bus-11.png"), Small);
_points[SUBTYPE(BUISGL, 42)] = Point(svg2img(":/POI/bus-11.svg", ratio),
Small);
}
Style::Style()
Style::Style(qreal ratio)
{
_light = QImage(":/marine/light.png");
_signal = QImage(":/marine/fog-signal.png");
@ -336,8 +354,8 @@ Style::Style()
_small = pixelSizeFont(10);
polygonStyle();
lineStyle();
pointStyle();
lineStyle(ratio);
pointStyle(ratio);
}
const Style::Line &Style::line(uint type) const

View File

@ -90,7 +90,7 @@ public:
QImage _img;
};
Style();
Style(qreal ratio);
const Line &line(uint type) const;
const Polygon &polygon(uint type) const;
@ -103,8 +103,8 @@ public:
private:
void polygonStyle();
void lineStyle();
void pointStyle();
void lineStyle(qreal ratio);
void pointStyle(qreal ratio);
QMap<uint, Line> _lines;
QMap<uint, Polygon> _polygons;

View File

@ -69,19 +69,19 @@ void MapData::points(const RectC &rect, int bits, QList<Point> *points)
_tileTree.Search(min, max, pointCb, &ctx);
}
void MapData::load()
void MapData::load(qreal ratio)
{
Q_ASSERT(!_style);
if (_typ)
_style = new Style(_typ);
_style = new Style(ratio, _typ);
else {
QString typFile(ProgramPaths::typFile());
if (QFileInfo::exists(typFile)) {
SubFile typ(&typFile);
_style = new Style(&typ);
_style = new Style(ratio, &typ);
} else
_style = new Style();
_style = new Style(ratio);
}
}

View File

@ -66,7 +66,7 @@ public:
QList<Poly> *lines);
void points(const RectC &rect, int bits, QList<Point> *points);
void load();
void load(qreal ratio);
void clear();
const QString &fileName() const {return _fileName;}

View File

@ -1,8 +1,11 @@
#include <QImage>
#include <QImageReader>
#include <QPainter>
#include "common/util.h"
#include "style.h"
using namespace IMG;
using namespace Util;
static QFont pixelSizeFont(int pixelSize)
{
@ -146,9 +149,10 @@ static bool skipLabel(SubFile *file, SubFile::Handle &hdl)
return true;
}
static QImage railroad()
static QImage railroad(qreal ratio)
{
QImage img(16, 4, QImage::Format_ARGB32_Premultiplied);
QImage img(16 * ratio, 4 * ratio, QImage::Format_ARGB32_Premultiplied);
img.setDevicePixelRatio(ratio);
img.fill(QColor("#717171"));
QPainter p(&img);
p.setPen(QPen(Qt::white, 2));
@ -157,7 +161,6 @@ static QImage railroad()
return img;
}
void Style::defaultPolygonStyle()
{
_polygons[TYPE(0x01)] = Polygon(QBrush("#dfd3b5"));
@ -307,7 +310,7 @@ void Style::defaultPolygonStyle()
<< TYPE(0x13) << 0x10900 << 0x10613 << 0x10409 << 0x10503 << 0x1060a;
}
void Style::defaultLineStyle()
void Style::defaultLineStyle(qreal ratio)
{
_lines[TYPE(0x01)] = Line(QPen(QColor("#9bd772"), 2, Qt::SolidLine),
QPen(QColor("#72a35a"), 6, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
@ -332,7 +335,7 @@ void Style::defaultLineStyle()
QPen(QColor("#e8a541"), 6, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
_lines[TYPE(0x0c)] = Line(QPen(QColor("#ffffff"), 3, Qt::SolidLine),
QPen(QColor("#d5cdc0"), 5, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
_lines[TYPE(0x14)] = Line(railroad());
_lines[TYPE(0x14)] = Line(railroad(ratio));
_lines[TYPE(0x16)] = Line(QPen(QColor("#aba083"), 1, Qt::DotLine));
_lines[TYPE(0x18)] = Line(QPen(QColor("#9fc4e1"), 2, Qt::SolidLine));
_lines[TYPE(0x18)].setTextColor(QColor("#9fc4e1"));
@ -406,7 +409,7 @@ void Style::defaultLineStyle()
_lines[0x10611] = Line(QPen(QColor("#eb49eb"), 1, Qt::DashLine));
}
void Style::defaultPointStyle()
void Style::defaultPointStyle(qreal ratio)
{
// Countries
_points[TYPE(0x14)].setTextColor(QColor("#505145"));
@ -425,137 +428,137 @@ void Style::defaultPointStyle()
_points[TYPE(0x03)].setTextFontSize(Large);
// POI
_points[0x2a00] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a01] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a02] = Point(QImage(":/POI/restaurant-noodle-11.png"));
_points[0x2a03] = Point(QImage(":/POI/bbq-11.png"));
_points[0x2a04] = Point(QImage(":/POI/restaurant-noodle-11.png"));
_points[0x2a05] = Point(QImage(":/POI/bakery-11.png"));
_points[0x2a06] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a07] = Point(QImage(":/POI/fast-food-11.png"));
_points[0x2a08] = Point(QImage(":/POI/restaurant-pizza-11.png"));
_points[0x2a09] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a0a] = Point(QImage(":/POI/restaurant-pizza-11.png"));
_points[0x2a0b] = Point(QImage(":/POI/restaurant-seafood-11.png"));
_points[0x2a0c] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a0d] = Point(QImage(":/POI/bakery-11.png"));
_points[0x2a0e] = Point(QImage(":/POI/cafe-11.png"));
_points[0x2a0f] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a10] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a11] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a12] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a13] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x2a00] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a01] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a02] = Point(svg2img(":/POI/restaurant-noodle-11.svg", ratio));
_points[0x2a03] = Point(svg2img(":/POI/bbq-11-11.svg", ratio));
_points[0x2a04] = Point(svg2img(":/POI/restaurant-noodle-11.svg", ratio));
_points[0x2a05] = Point(svg2img(":/POI/bakery-11.svg", ratio));
_points[0x2a06] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a07] = Point(svg2img(":/POI/fast-food-11.svg", ratio));
_points[0x2a08] = Point(svg2img(":/POI/restaurant-pizza-11.svg", ratio));
_points[0x2a09] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a0a] = Point(svg2img(":/POI/restaurant-pizza-11.svg", ratio));
_points[0x2a0b] = Point(svg2img(":/POI/restaurant-seafood-11.svg", ratio));
_points[0x2a0c] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a0d] = Point(svg2img(":/POI/bakery-11.svg", ratio));
_points[0x2a0e] = Point(svg2img(":/POI/cafe-11.svg", ratio));
_points[0x2a0f] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a10] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a11] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a12] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2a13] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x2b01] = Point(QImage(":/POI/lodging-11.png"));
_points[0x2b02] = Point(QImage(":/POI/lodging-11.png"));
_points[0x2b03] = Point(QImage(":/POI/campsite-11.png"));
_points[0x2b04] = Point(QImage(":/POI/village-11.png"));
_points[0x2b06] = Point(QImage(":/POI/shelter-11.png"));
_points[0x2b01] = Point(svg2img(":/POI/lodging-11.svg", ratio));
_points[0x2b02] = Point(svg2img(":/POI/lodging-11.svg", ratio));
_points[0x2b03] = Point(svg2img(":/POI/campsite-11.svg", ratio));
_points[0x2b04] = Point(svg2img(":/POI/village-11.svg", ratio));
_points[0x2b06] = Point(svg2img(":/POI/shelter-11.svg", ratio));
_points[0x2c01] = Point(QImage(":/POI/amusement-park-11.png"));
_points[0x2c02] = Point(QImage(":/POI/museum-11.png"));
_points[0x2c03] = Point(QImage(":/POI/library-11.png"));
_points[0x2c04] = Point(QImage(":/POI/landmark-11.png"));
_points[0x2c05] = Point(QImage(":/POI/school-11.png"));
_points[0x2c06] = Point(QImage(":/POI/garden-11.png"));
_points[0x2c07] = Point(QImage(":/POI/zoo-11.png"));
_points[0x2c08] = Point(QImage(":/POI/soccer-11.png"));
_points[0x2c0a] = Point(QImage(":/POI/bar-11.png"));
_points[0x2c0b] = Point(QImage(":/POI/place-of-worship-11.png"));
_points[0x2c0d] = Point(QImage(":/POI/religious-muslim-11.png"));
_points[0x2c0e] = Point(QImage(":/POI/religious-christian-11.png"));
_points[0x2c10] = Point(QImage(":/POI/religious-jewish-11.png"));
_points[0x2d01] = Point(QImage(":/POI/theatre-11.png"));
_points[0x2d02] = Point(QImage(":/POI/bar-11.png"));
_points[0x2d03] = Point(QImage(":/POI/cinema-11.png"));
_points[0x2d04] = Point(QImage(":/POI/casino-11.png"));
_points[0x2d05] = Point(QImage(":/POI/golf-11.png"));
_points[0x2d06] = Point(QImage(":/POI/skiing-11.png"));
_points[0x2d07] = Point(QImage(":/POI/bowling-alley-11.png"));
_points[0x2d09] = Point(QImage(":/POI/swimming-11.png"));
_points[0x2d0a] = Point(QImage(":/POI/fitness-centre-11.png"));
_points[0x2d0b] = Point(QImage(":/POI/airfield-11.png"));
_points[0x2c01] = Point(svg2img(":/POI/amusement-park-11.svg", ratio));
_points[0x2c02] = Point(svg2img(":/POI/museum-11.svg", ratio));
_points[0x2c03] = Point(svg2img(":/POI/library-11-11.svg", ratio));
_points[0x2c04] = Point(svg2img(":/POI/landmark-11.svg", ratio));
_points[0x2c05] = Point(svg2img(":/POI/school-11.svg", ratio));
_points[0x2c06] = Point(svg2img(":/POI/garden-11.svg", ratio));
_points[0x2c07] = Point(svg2img(":/POI/zoo-11.svg", ratio));
_points[0x2c08] = Point(svg2img(":/POI/soccer-11.svg", ratio));
_points[0x2c0a] = Point(svg2img(":/POI/bar-11.svg", ratio));
_points[0x2c0b] = Point(svg2img(":/POI/place-of-worship-11.svg", ratio));
_points[0x2c0d] = Point(svg2img(":/POI/religious-muslim-11.svg", ratio));
_points[0x2c0e] = Point(svg2img(":/POI/religious-christian-11.svg", ratio));
_points[0x2c10] = Point(svg2img(":/POI/religious-jewish-11.svg", ratio));
_points[0x2d01] = Point(svg2img(":/POI/theatre-11.svg", ratio));
_points[0x2d02] = Point(svg2img(":/POI/bar-11.svg", ratio));
_points[0x2d03] = Point(svg2img(":/POI/cinema-11.svg", ratio));
_points[0x2d04] = Point(svg2img(":/POI/casino-11.svg", ratio));
_points[0x2d05] = Point(svg2img(":/POI/golf-11.svg", ratio));
_points[0x2d06] = Point(svg2img(":/POI/skiing-11.svg", ratio));
_points[0x2d07] = Point(svg2img(":/POI/bowling-alley-11.svg", ratio));
_points[0x2d09] = Point(svg2img(":/POI/swimming-11.svg", ratio));
_points[0x2d0a] = Point(svg2img(":/POI/fitness-centre-11.svg", ratio));
_points[0x2d0b] = Point(svg2img(":/POI/airfield-11-11.svg", ratio));
_points[0x2e02] = Point(QImage(":/POI/grocery-11.png"));
_points[0x2e03] = Point(QImage(":/POI/shop-11.png"));
_points[0x2e05] = Point(QImage(":/POI/pharmacy-11.png"));
_points[0x2e06] = Point(QImage(":/POI/convenience-11.png"));
_points[0x2e07] = Point(QImage(":/POI/clothing-store-11.png"));
_points[0x2e08] = Point(QImage(":/POI/garden-centre-11.png"));
_points[0x2e09] = Point(QImage(":/POI/furniture-11.png"));
_points[0x2e0a] = Point(QImage(":/POI/shop-11.png"));
_points[0x2e0c] = Point(QImage(":/POI/shop-11.png"));
_points[0x2e02] = Point(svg2img(":/POI/grocery-11.svg", ratio));
_points[0x2e03] = Point(svg2img(":/POI/shop-11.svg", ratio));
_points[0x2e05] = Point(svg2img(":/POI/pharmacy-11.svg", ratio));
_points[0x2e06] = Point(svg2img(":/POI/convenience-11.svg", ratio));
_points[0x2e07] = Point(svg2img(":/POI/clothing-store-11.svg", ratio));
_points[0x2e08] = Point(svg2img(":/POI/garden-centre-11.svg", ratio));
_points[0x2e09] = Point(svg2img(":/POI/furniture-11.svg", ratio));
_points[0x2e0a] = Point(svg2img(":/POI/shop-11.svg", ratio));
_points[0x2e0c] = Point(svg2img(":/POI/shop-11.svg", ratio));
_points[0x2f01] = Point(QImage(":/POI/fuel-11.png"));
_points[0x2f02] = Point(QImage(":/POI/car-rental-11.png"));
_points[0x2f03] = Point(QImage(":/POI/car-repair-11.png"));
_points[0x2f04] = Point(QImage(":/POI/airport-11.png"));
_points[0x2f05] = Point(QImage(":/POI/post-11.png"));
_points[0x2f06] = Point(QImage(":/POI/bank-11.png"));
_points[0x2f07] = Point(QImage(":/POI/car-11.png"));
_points[0x2f08] = Point(QImage(":/POI/bus-11.png"));
_points[0x2f09] = Point(QImage(":/POI/harbor-11.png"));
_points[0x2f0b] = Point(QImage(":/POI/parking-11.png"));
_points[0x2f01] = Point(svg2img(":/POI/fuel-11.svg", ratio));
_points[0x2f02] = Point(svg2img(":/POI/car-rental-11.svg", ratio));
_points[0x2f03] = Point(svg2img(":/POI/car-repair-11.svg", ratio));
_points[0x2f04] = Point(svg2img(":/POI/airport-11.svg", ratio));
_points[0x2f05] = Point(svg2img(":/POI/post-11.svg", ratio));
_points[0x2f06] = Point(svg2img(":/POI/bank-11.svg", ratio));
_points[0x2f07] = Point(svg2img(":/POI/car-11.svg", ratio));
_points[0x2f08] = Point(svg2img(":/POI/bus-11.svg", ratio));
_points[0x2f09] = Point(svg2img(":/POI/harbor-11.svg", ratio));
_points[0x2f0b] = Point(svg2img(":/POI/parking-11.svg", ratio));
_points[0x2f0b].setTextFontSize(None);
_points[0x2f0c] = Point(QImage(":/POI/toilet-11.png"));
_points[0x2f0c] = Point(svg2img(":/POI/toilet-11.svg", ratio));
_points[0x2f0c].setTextFontSize(None);
_points[0x2f10] = Point(QImage(":/POI/hairdresser-11.png"));
_points[0x2f10] = Point(svg2img(":/POI/hairdresser-11.svg", ratio));
_points[0x2f12].setTextFontSize(None);
_points[0x2f13] = Point(QImage(":/POI/hardware-11.png"));
_points[0x2f17] = Point(QImage(":/POI/bus-11.png"));
_points[0x2f13] = Point(svg2img(":/POI/hardware-11.svg", ratio));
_points[0x2f17] = Point(svg2img(":/POI/bus-11.svg", ratio));
_points[0x3001] = Point(QImage(":/POI/police-11.png"));
_points[0x3002] = Point(QImage(":/POI/hospital-11.png"));
_points[0x3003] = Point(QImage(":/POI/town-hall-11.png"));
_points[0x3006] = Point(QImage(":/POI/entrance-alt1-11.png"));
_points[0x3007] = Point(QImage(":/POI/town-hall-11.png"));
_points[0x3008] = Point(QImage(":/POI/fire-station-11.png"));
_points[0x3001] = Point(svg2img(":/POI/police-11.svg", ratio));
_points[0x3002] = Point(svg2img(":/POI/hospital-11.svg", ratio));
_points[0x3003] = Point(svg2img(":/POI/town-hall-11.svg", ratio));
_points[0x3006] = Point(svg2img(":/POI/entrance-alt1-11.svg", ratio));
_points[0x3007] = Point(svg2img(":/POI/town-hall-11.svg", ratio));
_points[0x3008] = Point(svg2img(":/POI/fire-station-11.svg", ratio));
_points[0x4000] = Point(QImage(":/POI/golf-11.png"));
_points[0x4300] = Point(QImage(":/POI/harbor-11.png"));
_points[0x4400] = Point(QImage(":/POI/fuel-11.png"));
_points[0x4500] = Point(QImage(":/POI/restaurant-11.png"));
_points[0x4600] = Point(QImage(":/POI/bar-11.png"));
_points[0x4900] = Point(QImage(":/POI/park-11.png"));
_points[0x4a00] = Point(QImage(":/POI/picnic-site-11.png"));
_points[0x4c00] = Point(QImage(":/POI/information-11.png"));
_points[0x4800] = Point(QImage(":/POI/campsite-11.png"));
_points[0x4a00] = Point(QImage(":/POI/picnic-site-11.png"));
_points[0x4b00] = Point(QImage(":/POI/hospital-11.png"));
_points[0x4c00] = Point(QImage(":/POI/information-11.png"));
_points[0x4d00] = Point(QImage(":/POI/parking-11.png"));
_points[0x4000] = Point(svg2img(":/POI/golf-11.svg", ratio));
_points[0x4300] = Point(svg2img(":/POI/harbor-11.svg", ratio));
_points[0x4400] = Point(svg2img(":/POI/fuel-11.svg", ratio));
_points[0x4500] = Point(svg2img(":/POI/restaurant-11.svg", ratio));
_points[0x4600] = Point(svg2img(":/POI/bar-11.svg", ratio));
_points[0x4900] = Point(svg2img(":/POI/park-11.svg", ratio));
_points[0x4a00] = Point(svg2img(":/POI/picnic-site-11.svg", ratio));
_points[0x4c00] = Point(svg2img(":/POI/information-11.svg", ratio));
_points[0x4800] = Point(svg2img(":/POI/campsite-11.svg", ratio));
_points[0x4a00] = Point(svg2img(":/POI/picnic-site-11.svg", ratio));
_points[0x4b00] = Point(svg2img(":/POI/hospital-11.svg", ratio));
_points[0x4c00] = Point(svg2img(":/POI/information-11.svg", ratio));
_points[0x4d00] = Point(svg2img(":/POI/parking-11.svg", ratio));
_points[0x4d00].setTextFontSize(None);
_points[0x4e00] = Point(QImage(":/POI/toilet-11.png"));
_points[0x4e00] = Point(svg2img(":/POI/toilet-11.svg", ratio));
_points[0x4e00].setTextFontSize(None);
_points[0x5000] = Point(QImage(":/POI/drinking-water-11.png"));
_points[0x5000] = Point(svg2img(":/POI/drinking-water-11.svg", ratio));
_points[0x5000].setTextFontSize(None);
_points[0x5100] = Point(QImage(":/POI/telephone-11.png"));
_points[0x5200] = Point(QImage(":/POI/viewpoint-11.png"));
_points[0x5300] = Point(QImage(":/POI/skiing-11.png"));
_points[0x5400] = Point(QImage(":/POI/swimming-11.png"));
_points[0x5500] = Point(QImage(":/POI/dam-11.png"));
_points[0x5700] = Point(QImage(":/POI/danger-11.png"));
_points[0x5800] = Point(QImage(":/POI/roadblock-11.png"));
_points[0x5900] = Point(QImage(":/POI/airport-11.png"));
_points[0x5901] = Point(QImage(":/POI/airport-11.png"));
_points[0x5904] = Point(QImage(":/POI/heliport-11.png"));
_points[0x5100] = Point(svg2img(":/POI/telephone-11.svg", ratio));
_points[0x5200] = Point(svg2img(":/POI/viewpoint-11.svg", ratio));
_points[0x5300] = Point(svg2img(":/POI/skiing-11.svg", ratio));
_points[0x5400] = Point(svg2img(":/POI/swimming-11.svg", ratio));
_points[0x5500] = Point(svg2img(":/POI/dam-11.svg", ratio));
_points[0x5700] = Point(svg2img(":/POI/danger-11.svg", ratio));
_points[0x5800] = Point(svg2img(":/POI/roadblock-11.svg", ratio));
_points[0x5900] = Point(svg2img(":/POI/airport-11.svg", ratio));
_points[0x5901] = Point(svg2img(":/POI/airport-11.svg", ratio));
_points[0x5904] = Point(svg2img(":/POI/heliport-11.svg", ratio));
_points[0x6401] = Point(QImage(":/POI/bridge-11.png"));
_points[0x6402] = Point(QImage(":/POI/building-alt1-11.png"));
_points[0x6403] = Point(QImage(":/POI/cemetery-11.png"));
_points[0x6404] = Point(QImage(":/POI/religious-christian-11.png"));
_points[0x6407] = Point(QImage(":/POI/dam-11.png"));
_points[0x6408] = Point(QImage(":/POI/hospital-11.png"));
_points[0x6409] = Point(QImage(":/POI/dam-11.png"));
_points[0x640d] = Point(QImage(":/POI/communications-tower-11.png"));
_points[0x640e] = Point(QImage(":/POI/park-11.png"));
_points[0x640f] = Point(QImage(":/POI/post-11.png"));
_points[0x6411] = Point(QImage(":/POI/communications-tower-11.png"));
_points[0x6401] = Point(svg2img(":/POI/bridge-11.svg", ratio));
_points[0x6402] = Point(svg2img(":/POI/building-alt1-11.svg", ratio));
_points[0x6403] = Point(svg2img(":/POI/cemetery-11.svg", ratio));
_points[0x6404] = Point(svg2img(":/POI/religious-christian-11.svg", ratio));
_points[0x6407] = Point(svg2img(":/POI/dam-11.svg", ratio));
_points[0x6408] = Point(svg2img(":/POI/hospital-11.svg", ratio));
_points[0x6409] = Point(svg2img(":/POI/dam-11.svg", ratio));
_points[0x640d] = Point(svg2img(":/POI/communications-tower-11.svg", ratio));
_points[0x640e] = Point(svg2img(":/POI/park-11.svg", ratio));
_points[0x640f] = Point(svg2img(":/POI/post-11.svg", ratio));
_points[0x6411] = Point(svg2img(":/POI/communications-tower-11.svg", ratio));
_points[0x6508] = Point(QImage(":/POI/waterfall-11.png"));
_points[0x6513] = Point(QImage(":/POI/wetland-11.png"));
_points[0x6604] = Point(QImage(":/POI/beach-11.png"));
_points[0x6616] = Point(QImage(":/POI/mountain-11.png"));
_points[0x6508] = Point(svg2img(":/POI/waterfall-11.svg", ratio));
_points[0x6513] = Point(svg2img(":/POI/wetland-11.svg", ratio));
_points[0x6604] = Point(svg2img(":/POI/beach-11.svg", ratio));
_points[0x6616] = Point(svg2img(":/POI/mountain-11.svg", ratio));
// NT types
@ -1231,16 +1234,16 @@ bool Style::parseTYPFile(SubFile *file)
return true;
}
Style::Style(SubFile *typ)
Style::Style(qreal ratio, SubFile *typ)
{
_large = pixelSizeFont(16);
_normal = pixelSizeFont(14);
_small = pixelSizeFont(12);
_extraSmall = pixelSizeFont(10);
defaultLineStyle();
defaultLineStyle(ratio);
defaultPolygonStyle();
defaultPointStyle();
defaultPointStyle(ratio);
if (typ)
parseTYPFile(typ);

View File

@ -89,7 +89,7 @@ public:
};
Style(SubFile *typ = 0);
Style(qreal ratio, SubFile *typ = 0);
const Line &line(quint32 type) const;
const Polygon &polygon(quint32 type) const;
@ -165,8 +165,8 @@ private:
bool parseDrawOrder(SubFile *file, SubFile::Handle &hdl,
const Section &section);
void defaultPolygonStyle();
void defaultLineStyle();
void defaultPointStyle();
void defaultLineStyle(qreal ratio);
void defaultPointStyle(qreal ratio);
static bool itemInfo(SubFile *file, SubFile::Handle &hdl,
const Section &section, ItemInfo &info);

View File

@ -86,7 +86,7 @@ void IMGMap::load(const Projection &in, const Projection &out,
_dataBounds = limitBounds(_data.first()->bounds(), _projection);
for (int i = 0; i < _data.size(); i++)
_data.at(i)->load();
_data.at(i)->load(devicelRatio);
updateTransform();