Skip to content

Commit 1b3241e

Browse files
authored
Add Mierune maps (#166)
* Add support for background color defined as list * Strip field name. * Loading sprite is done via parseSymbolLayerAsRenderer * Add JP Mierune maps * Upgrade version to 3.0.2
1 parent 2cb313e commit 1b3241e

File tree

5 files changed

+49
-43
lines changed

5 files changed

+49
-43
lines changed

add_connection_dialog.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
class AddConnectionDialog(QtWidgets.QDialog):
1111

1212
STANDARD_DATASET = mapdatasets.STANDARD_DATASET
13-
# LOCAL_JP_DATASET = mapdatasets.LOCAL_JP_DATASET
13+
LOCAL_JP_DATASET = mapdatasets.LOCAL_JP_DATASET
1414
LOCAL_NL_DATASET = mapdatasets.LOCAL_NL_DATASET
1515
LOCAL_UK_DATASET = mapdatasets.LOCAL_UK_DATASET
1616

@@ -29,7 +29,7 @@ def _init_list(self):
2929
QtWidgets.QAbstractItemView.ExtendedSelection)
3030

3131
DATASETS = dict(**self.STANDARD_DATASET,
32-
# **self.LOCAL_JP_DATASET,
32+
**self.LOCAL_JP_DATASET,
3333
**self.LOCAL_NL_DATASET,
3434
**self.LOCAL_UK_DATASET
3535
)

browser_root_collection.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def createDataItem(self, path, parentItem):
3131

3232
class RootCollection(QgsDataCollectionItem):
3333
STANDARD_DATASET = mapdatasets.STANDARD_DATASET
34-
# LOCAL_JP_DATASET = mapdatasets.LOCAL_JP_DATASET
34+
LOCAL_JP_DATASET = mapdatasets.LOCAL_JP_DATASET
3535
LOCAL_NL_DATASET = mapdatasets.LOCAL_NL_DATASET
3636
LOCAL_UK_DATASET = mapdatasets.LOCAL_UK_DATASET
3737

@@ -44,7 +44,7 @@ def createChildren(self):
4444
children = []
4545

4646
DATASETS = dict(**self.STANDARD_DATASET,
47-
# **self.LOCAL_JP_DATASET,
47+
**self.LOCAL_JP_DATASET,
4848
**self.LOCAL_NL_DATASET,
4949
**self.LOCAL_UK_DATASET,
5050
)

gl2qgis/gl2qgis.py

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -915,30 +915,31 @@ def split_font_family(font_name):
915915
label_settings.xOffset = text_offset.x()
916916
label_settings.yOffset = text_offset.y()
917917

918-
json_icon_image = json_layout.get("icon-image")
919-
if json_icon_image and label_settings.placement in (QgsPalLayerSettings.Horizontal, QgsPalLayerSettings.Curved):
920-
sprite_size = QSize()
921-
sprite_property = ""
922-
sprite_size_property = ""
923-
sprite = core_converter.retrieveSpriteAsBase64(json_icon_image, context, sprite_size, sprite_property,
924-
sprite_size_property)
925-
if sprite:
926-
marker_layer = QgsRasterMarkerSymbolLayer()
927-
marker_layer.setPath(sprite)
928-
marker_layer.setSizeUnit(context.targetUnit())
929-
930-
if sprite_property:
931-
marker_dd_properties = QgsPropertyCollection()
932-
933-
marker_layer.setDataDefinedProperties(marker_dd_properties)
934-
935-
936-
backgroundSettings = QgsTextBackgroundSettings()
937-
backgroundSettings.setEnabled(True)
938-
backgroundSettings.setType(QgsTextBackgroundSettings.ShapeMarkerSymbol)
939-
backgroundSettings.setSizeUnit(context.targetUnit())
940-
backgroundSettings.setMarkerSymbol(QgsMarkerSymbol([marker_layer]))
941-
format.setBackground(backgroundSettings)
918+
# should be fixed for shield
919+
# json_icon_image = json_layout.get("icon-image")
920+
# if json_icon_image and label_settings.placement in (QgsPalLayerSettings.Horizontal, QgsPalLayerSettings.Curved):
921+
# sprite_size = QSize()
922+
# sprite_property = ""
923+
# sprite_size_property = ""
924+
# sprite = core_converter.retrieveSpriteAsBase64(json_icon_image, context, sprite_size, sprite_property,
925+
# sprite_size_property)
926+
# if sprite:
927+
# marker_layer = QgsRasterMarkerSymbolLayer()
928+
# marker_layer.setPath(sprite)
929+
# marker_layer.setSizeUnit(context.targetUnit())
930+
#
931+
# if sprite_property:
932+
# marker_dd_properties = QgsPropertyCollection()
933+
#
934+
# marker_layer.setDataDefinedProperties(marker_dd_properties)
935+
#
936+
#
937+
# backgroundSettings = QgsTextBackgroundSettings()
938+
# backgroundSettings.setEnabled(True)
939+
# backgroundSettings.setType(QgsTextBackgroundSettings.ShapeMarkerSymbol)
940+
# backgroundSettings.setSizeUnit(context.targetUnit())
941+
# backgroundSettings.setMarkerSymbol(QgsMarkerSymbol([marker_layer]))
942+
# format.setBackground(backgroundSettings)
942943

943944
if text_size:
944945
label_settings.priority = int(min(text_size / (context.pixelSizeConversionFactor() * 3), 10.0))
@@ -1161,6 +1162,7 @@ def process_label_field(string: str):
11611162
# Convert field name
11621163
# {field_name} is permitted in string -- if multiple fields are present, convert them to an expression
11631164
# but if single field is covered in {}, return it directly
1165+
string = string.strip()
11641166
single_field_rx = QRegularExpression("^{([^}]+)}$")
11651167
match = single_field_rx.match(string)
11661168
if match.hasMatch():
@@ -1522,6 +1524,10 @@ def parse_background(bg_layer_data: dict):
15221524
elif isinstance(json_background_color, str):
15231525
bg_color = core_converter.parseColor(json_background_color, context)
15241526
sym.symbolLayer(0).setColor(bg_color)
1527+
elif isinstance(json_background_color, list):
1528+
bg_color_expr = parse_value_list(json_background_color, PropertyType.Color, context, 1, 255)
1529+
fill_symbol = sym.symbolLayer(0)
1530+
fill_symbol.setDataDefinedProperty(QgsSymbolLayer.PropertyFillColor, bg_color_expr)
15251531
else:
15261532
context.pushWarning(f"Background: Skipping not implemented expression for background color: "
15271533
f"{json_background_color} , {type(json_background_color)}")

mapdatasets.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -73,20 +73,20 @@
7373
}
7474
}
7575

76-
# LOCAL_JP_DATASET = {
77-
# 'JP MIERUNE Streets': {
78-
# 'raster': r'https://api.maptiler.com/maps/jp-mierune-streets/256/tiles.json',
79-
# 'vector': r'https://api.maptiler.com/maps/jp-mierune-streets/style.json'
80-
# },
81-
# 'JP MIERUNE Dark': {
82-
# 'raster': r'https://api.maptiler.com/maps/jp-mierune-dark/256/tiles.json',
83-
# 'vector': r'https://api.maptiler.com/maps/jp-mierune-dark/style.json'
84-
# },
85-
# 'JP MIERUNE Gray': {
86-
# 'raster': r'https://api.maptiler.com/maps/jp-mierune-gray/256/tiles.json',
87-
# 'vector': r'https://api.maptiler.com/maps/jp-mierune-gray/style.json'
88-
# }
89-
# }
76+
LOCAL_JP_DATASET = {
77+
'JP MIERUNE Streets': {
78+
'raster': r'https://api.maptiler.com/maps/jp-mierune-streets/256/tiles.json',
79+
'vector': r'https://api.maptiler.com/maps/jp-mierune-streets/style.json'
80+
},
81+
'JP MIERUNE Dark': {
82+
'raster': r'https://api.maptiler.com/maps/jp-mierune-dark/256/tiles.json',
83+
'vector': r'https://api.maptiler.com/maps/jp-mierune-dark/style.json'
84+
},
85+
'JP MIERUNE Gray': {
86+
'raster': r'https://api.maptiler.com/maps/jp-mierune-gray/256/tiles.json',
87+
'vector': r'https://api.maptiler.com/maps/jp-mierune-gray/style.json'
88+
}
89+
}
9090

9191
LOCAL_NL_DATASET = {
9292
'NL Cartiqo Dark': {

metadata.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
name=MapTiler
77
qgisMinimumVersion=3.24
88
description=Street and satellite base maps with vector tiles
9-
version=3.0.1
9+
version=3.0.2
1010
author=MapTiler
1111
email=info@maptiler.com
1212

0 commit comments

Comments
 (0)