maps4fs 1.8.183__py3-none-any.whl → 1.8.185__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- maps4fs/__init__.py +2 -0
- maps4fs/generator/component/background.py +2 -2
- maps4fs/generator/component/grle.py +3 -3
- maps4fs/generator/dem.py +0 -1
- maps4fs/generator/dtm/baden.py +31 -0
- maps4fs/generator/dtm/mv.py +42 -0
- maps4fs/generator/texture.py +2 -2
- {maps4fs-1.8.183.dist-info → maps4fs-1.8.185.dist-info}/METADATA +23 -21
- {maps4fs-1.8.183.dist-info → maps4fs-1.8.185.dist-info}/RECORD +12 -10
- {maps4fs-1.8.183.dist-info → maps4fs-1.8.185.dist-info}/LICENSE.md +0 -0
- {maps4fs-1.8.183.dist-info → maps4fs-1.8.185.dist-info}/WHEEL +0 -0
- {maps4fs-1.8.183.dist-info → maps4fs-1.8.185.dist-info}/top_level.txt +0 -0
maps4fs/__init__.py
CHANGED
@@ -17,6 +17,8 @@ from maps4fs.generator.dtm.france import FranceProvider
|
|
17
17
|
from maps4fs.generator.dtm.norway import NorwayProvider
|
18
18
|
from maps4fs.generator.dtm.denmark import DenmarkProvider
|
19
19
|
from maps4fs.generator.dtm.switzerland import SwitzerlandProvider
|
20
|
+
from maps4fs.generator.dtm.mv import MecklenburgVorpommernProvider
|
21
|
+
from maps4fs.generator.dtm.baden import BadenWurttembergProvider
|
20
22
|
from maps4fs.generator.game import Game
|
21
23
|
from maps4fs.generator.map import Map
|
22
24
|
from maps4fs.generator.settings import (
|
@@ -159,7 +159,7 @@ class Background(MeshComponent, ImageComponent):
|
|
159
159
|
If at least one DEM file is missing, the generation will be stopped at all.
|
160
160
|
"""
|
161
161
|
if not os.path.isfile(self.dem.dem_path):
|
162
|
-
self.logger.
|
162
|
+
self.logger.error(
|
163
163
|
"DEM file not found, generation will be stopped: %s", self.dem.dem_path
|
164
164
|
)
|
165
165
|
return
|
@@ -436,7 +436,7 @@ class Background(MeshComponent, ImageComponent):
|
|
436
436
|
|
437
437
|
# Check if the image contains non-zero values.
|
438
438
|
if not np.any(plane_water):
|
439
|
-
self.logger.
|
439
|
+
self.logger.debug("Water resources image is empty, skipping water generation.")
|
440
440
|
return
|
441
441
|
|
442
442
|
dilated_plane_water = cv2.dilate(
|
@@ -156,14 +156,14 @@ class GRLE(ImageComponent, XMLComponent):
|
|
156
156
|
"""
|
157
157
|
fields_layer = self.map.get_texture_layer(by_usage="field")
|
158
158
|
if not fields_layer:
|
159
|
-
self.logger.
|
159
|
+
self.logger.debug("Fields layer not found in the texture component.")
|
160
160
|
return None
|
161
161
|
|
162
162
|
fields_layer_path = fields_layer.get_preview_or_path(
|
163
163
|
self.game.weights_dir_path(self.map_directory)
|
164
164
|
)
|
165
165
|
if not fields_layer_path or not os.path.isfile(fields_layer_path):
|
166
|
-
self.logger.
|
166
|
+
self.logger.debug("Fields layer not found in the texture component.")
|
167
167
|
return None
|
168
168
|
fields_np = cv2.imread(fields_layer_path)
|
169
169
|
# Resize fields_np to the same size as farmlands_np.
|
@@ -182,7 +182,7 @@ class GRLE(ImageComponent, XMLComponent):
|
|
182
182
|
|
183
183
|
fields = self.get_infolayer_data(Parameters.TEXTURES, Parameters.FIELDS)
|
184
184
|
if not fields:
|
185
|
-
self.logger.
|
185
|
+
self.logger.debug("Fields data not found in textures info layer.")
|
186
186
|
return
|
187
187
|
farmlands.extend(fields)
|
188
188
|
|
maps4fs/generator/dem.py
CHANGED
@@ -317,7 +317,6 @@ class DEM(Component):
|
|
317
317
|
"""Saves empty DEM file filled with zeros."""
|
318
318
|
dem_data = np.zeros(dem_output_resolution, dtype="uint16")
|
319
319
|
cv2.imwrite(self._dem_path, dem_data)
|
320
|
-
self.logger.warning("DEM data filled with zeros and saved to %s.", self._dem_path)
|
321
320
|
|
322
321
|
def info_sequence(self) -> dict[Any, Any] | None: # type: ignore
|
323
322
|
"""Returns the information sequence for the component. Must be implemented in the child
|
@@ -0,0 +1,31 @@
|
|
1
|
+
"""This module contains provider of Baden-Württemberg data."""
|
2
|
+
|
3
|
+
from maps4fs.generator.dtm.base.wcs import WCSProvider
|
4
|
+
from maps4fs.generator.dtm.dtm import DTMProvider
|
5
|
+
|
6
|
+
|
7
|
+
class BadenWurttembergProvider(WCSProvider, DTMProvider):
|
8
|
+
"""Provider of Baden-Württemberg data."""
|
9
|
+
|
10
|
+
_code = "baden"
|
11
|
+
_name = "Baden-Württemberg"
|
12
|
+
_region = "DE"
|
13
|
+
_icon = "🇩🇪"
|
14
|
+
_resolution = "1"
|
15
|
+
_author = "[kbrandwijk](https://github.com/kbrandwijk)"
|
16
|
+
_is_community = True
|
17
|
+
_instructions = None
|
18
|
+
_is_base = False
|
19
|
+
_extents = (49.79645444804715, 47.52877040346605, 10.54203149250156, 7.444081717803481)
|
20
|
+
|
21
|
+
_url = "https://owsproxy.lgl-bw.de/owsproxy/wcs/WCS_INSP_BW_Hoehe_Coverage_DGM1"
|
22
|
+
_wcs_version = "2.0.1"
|
23
|
+
_source_crs = "EPSG:25832"
|
24
|
+
_tile_size = 1000
|
25
|
+
|
26
|
+
def get_wcs_parameters(self, tile):
|
27
|
+
return {
|
28
|
+
"identifier": ["EL.ElevationGridCoverage"],
|
29
|
+
"subsets": [("E", str(tile[1]), str(tile[3])), ("N", str(tile[0]), str(tile[2]))],
|
30
|
+
"format": "image/tiff",
|
31
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
"""This module contains provider of Mecklenburg-Vorpommern data."""
|
2
|
+
|
3
|
+
from maps4fs.generator.dtm.base.wcs import WCSProvider
|
4
|
+
from maps4fs.generator.dtm.dtm import DTMProvider, DTMProviderSettings
|
5
|
+
|
6
|
+
|
7
|
+
class MecklenburgVorpommernProviderSettings(DTMProviderSettings):
|
8
|
+
"""Settings for the Mecklenburg-Vorpommern provider."""
|
9
|
+
|
10
|
+
dataset: dict | str = {
|
11
|
+
"mv_dgm": "Mecklenburg-Vorpommern DGM1",
|
12
|
+
"mv_dgm5": "Mecklenburg-Vorpommern DGM5",
|
13
|
+
"mv_dgm25": "Mecklenburg-Vorpommern DGM25",
|
14
|
+
}
|
15
|
+
|
16
|
+
|
17
|
+
class MecklenburgVorpommernProvider(WCSProvider, DTMProvider):
|
18
|
+
"""Provider of Mecklenburg-Vorpommern data."""
|
19
|
+
|
20
|
+
_code = "mv"
|
21
|
+
_name = "Mecklenburg-Vorpommern"
|
22
|
+
_region = "DE"
|
23
|
+
_icon = "🇩🇪"
|
24
|
+
_resolution = "1-25"
|
25
|
+
_author = "[kbrandwijk](https://github.com/kbrandwijk)"
|
26
|
+
_is_community = True
|
27
|
+
_instructions = None
|
28
|
+
_is_base = False
|
29
|
+
_settings = MecklenburgVorpommernProviderSettings
|
30
|
+
_extents = (54.8, 53, 14.5, 10.5)
|
31
|
+
|
32
|
+
_url = "https://www.geodaten-mv.de/dienste/dgm_wcs"
|
33
|
+
_wcs_version = "2.0.1"
|
34
|
+
_source_crs = "EPSG:25833"
|
35
|
+
_tile_size = 1000
|
36
|
+
|
37
|
+
def get_wcs_parameters(self, tile):
|
38
|
+
return {
|
39
|
+
"identifier": [self.user_settings.dataset],
|
40
|
+
"subsets": [("x", str(tile[1]), str(tile[3])), ("y", str(tile[0]), str(tile[2]))],
|
41
|
+
"format": "image/tiff",
|
42
|
+
}
|
maps4fs/generator/texture.py
CHANGED
@@ -838,9 +838,9 @@ class Texture(Component):
|
|
838
838
|
)
|
839
839
|
|
840
840
|
if not isinstance(padded_polygon, shapely.geometry.polygon.Polygon):
|
841
|
-
self.logger.
|
841
|
+
self.logger.debug("The padding value is too high, field will not padded.")
|
842
842
|
elif not list(padded_polygon.exterior.coords):
|
843
|
-
self.logger.
|
843
|
+
self.logger.debug("The padding value is too high, field will not padded.")
|
844
844
|
else:
|
845
845
|
polygon = padded_polygon
|
846
846
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: maps4fs
|
3
|
-
Version: 1.8.
|
3
|
+
Version: 1.8.185
|
4
4
|
Summary: Generate map templates for Farming Simulator from real places.
|
5
5
|
Author-email: iwatkot <iwatkot@gmail.com>
|
6
6
|
License: MIT License
|
@@ -686,29 +686,31 @@ The generator supports adding the own DTM providers, please refer to the [DTM Pr
|
|
686
686
|
|
687
687
|
### Supported DTM providers
|
688
688
|
|
689
|
-

|
690
690
|
|
691
691
|
In addition to SRTM 30m, which provides global coverage, the map above highlights all countries and/or regions where higher resolution coverage is provided by one of the DTM providers.
|
692
692
|
|
693
|
-
| Provider Name
|
694
|
-
|
|
695
|
-
| 🌎 SRTM30
|
696
|
-
| 🇺🇸 USGS
|
697
|
-
| 🏴 England
|
698
|
-
| 🏴 Scotland
|
699
|
-
| 🇩🇪 Hessen, Germany
|
700
|
-
| 🇩🇪 Niedersachsen, Germany
|
701
|
-
| 🇩🇪 Bayern, Germany
|
702
|
-
| 🇩🇪 Nordrhein-Westfalen, Germany
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
693
|
+
| Provider Name | Resolution | Developer |
|
694
|
+
| ---------------------------------- | ------------ | ------------------------------------------- |
|
695
|
+
| 🌎 SRTM30 | 30 meters | [iwatkot](https://github.com/iwatkot) |
|
696
|
+
| 🇺🇸 USGS | 1-90 meters | [ZenJakey](https://github.com/ZenJakey) |
|
697
|
+
| 🏴 England | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
698
|
+
| 🏴 Scotland | 0.25-1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
699
|
+
| 🇩🇪 Hessen, Germany | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
700
|
+
| 🇩🇪 Niedersachsen, Germany | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
701
|
+
| 🇩🇪 Bayern, Germany | 1 meter | [H4rdB4se](https://github.com/H4rdB4se) |
|
702
|
+
| 🇩🇪 Nordrhein-Westfalen, Germany | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
703
|
+
| 🇩🇪 Mecklenburg-Vorpommern, Germany | 1-25 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
704
|
+
| 🇩🇪 Baden-Württemberg, Germany | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
705
|
+
| 🇨🇦 Canada | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
706
|
+
| 🇧🇪 Flanders, Belgium | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
707
|
+
| 🇫🇷 France | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
708
|
+
| 🇮🇹 Italy | 10 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
709
|
+
| 🇳🇴 Norway | 1 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
710
|
+
| 🇪🇸 Spain | 5 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
711
|
+
| 🇫🇮 Finland | 2 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
712
|
+
| 🇩🇰 Denmark | 0.4 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
713
|
+
| 🇨🇭 Switzerland | 0.5-2 meter | [kbrandwijk](https://github.com/kbrandwijk) |
|
712
714
|
|
713
715
|
## Special thanks
|
714
716
|
|
@@ -1,16 +1,16 @@
|
|
1
|
-
maps4fs/__init__.py,sha256=
|
1
|
+
maps4fs/__init__.py,sha256=nKKMY2PGVAluIcIdLp5sgspSDCBDriF3iE8Pd6xyKWI,1563
|
2
2
|
maps4fs/logger.py,sha256=HQrDyj72mUjVYo25aR_-_SxVn2rfFjDCNbj-JKJdSnE,1488
|
3
3
|
maps4fs/generator/__init__.py,sha256=zZMLEkGzb4z0xql650gOtGSvcgX58DnJ2yN3vC2daRk,43
|
4
|
-
maps4fs/generator/dem.py,sha256=
|
4
|
+
maps4fs/generator/dem.py,sha256=dyzCFfDL6W_nCjwi9uF3-PCiL36rfOh3jGXlDuwiJYg,11795
|
5
5
|
maps4fs/generator/game.py,sha256=FFAyckuTW6Ix5aRACXOj2eiA72xd3OMCcOARrMhS164,11025
|
6
6
|
maps4fs/generator/map.py,sha256=QrsZfOcyuLrQuGUjA0nyB7FTcxwj-LUe-rjLiq5P4ME,11467
|
7
7
|
maps4fs/generator/qgis.py,sha256=Es8hLuqN_KH8lDfnJE6He2rWYbAKJ3RGPn-o87S6CPI,6116
|
8
8
|
maps4fs/generator/settings.py,sha256=cFlN-gK8QcySqyPtcGm-2fLnxQnlmC3Y9kQufJxwI3Y,6270
|
9
|
-
maps4fs/generator/texture.py,sha256
|
9
|
+
maps4fs/generator/texture.py,sha256=kCbTHoHhJPRDLWNhqBF0ElC2bQBPztvaj2qaFrS9vnY,36774
|
10
10
|
maps4fs/generator/component/__init__.py,sha256=zZMLEkGzb4z0xql650gOtGSvcgX58DnJ2yN3vC2daRk,43
|
11
|
-
maps4fs/generator/component/background.py,sha256=
|
11
|
+
maps4fs/generator/component/background.py,sha256=Q1GCrCZxAHOI8eNabx_KpgVOYv-3B_WTWOKk4Gn7-o4,18790
|
12
12
|
maps4fs/generator/component/config.py,sha256=RitKgFDZPzjA1fi8GcEi1na75qqaueUvpcITHjBvCXc,3674
|
13
|
-
maps4fs/generator/component/grle.py,sha256=
|
13
|
+
maps4fs/generator/component/grle.py,sha256=nDA6vjjfWFL0Hkz6aso1aLIwuksbxzZw9syNax1bD04,19134
|
14
14
|
maps4fs/generator/component/i3d.py,sha256=kJ3Th1mSdBC9j8cyWBwIyYm0fKzYJtocI0jYWkVX3AU,19713
|
15
15
|
maps4fs/generator/component/satellite.py,sha256=xzxqHp-G-jRgyI38-XdaMPdGWiC3PdhVJAjBnZL9wL8,5004
|
16
16
|
maps4fs/generator/component/base/__init__.py,sha256=zZMLEkGzb4z0xql650gOtGSvcgX58DnJ2yN3vC2daRk,43
|
@@ -19,6 +19,7 @@ maps4fs/generator/component/base/component_image.py,sha256=fFgY6k2CbLIg3HS7KeiHi
|
|
19
19
|
maps4fs/generator/component/base/component_mesh.py,sha256=43JY8X0ugIWAJq5y11vTJM9UfbL7SSugj8LkdPmni10,8871
|
20
20
|
maps4fs/generator/component/base/component_xml.py,sha256=6OO1dKoceO1ACk7-k1oGtnkfNud8ZN3u3ZNjdNMpTqw,3967
|
21
21
|
maps4fs/generator/dtm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
22
|
+
maps4fs/generator/dtm/baden.py,sha256=69nyaY-6lwrXyNcWlOGPzXQK726COiRJGE2UvADqaZQ,1039
|
22
23
|
maps4fs/generator/dtm/bavaria.py,sha256=7njrEvSCYAC8ZVyvS-_84iXHhWA0oHKrEqSzxdnZuGs,4293
|
23
24
|
maps4fs/generator/dtm/canada.py,sha256=lYONwm6aNX5cjVggR3AiZZF9dlCDAWg0M8RMaObog8s,1288
|
24
25
|
maps4fs/generator/dtm/denmark.py,sha256=GMB9PPxXth6V1v3XuURVWVabJf4xlr158bKfeIIisek,1476
|
@@ -29,6 +30,7 @@ maps4fs/generator/dtm/flanders.py,sha256=81pKkrM40SeOe1LSlcsTNXSmUNpofC4D454DG6W
|
|
29
30
|
maps4fs/generator/dtm/france.py,sha256=aPHrHiDr7nBND_yAh-xnhKeS5OJXJ3Qwb1s3Kkh5OJA,2050
|
30
31
|
maps4fs/generator/dtm/hessen.py,sha256=dYu7TUXICaFMI1sc2l1i3ZDdM5fecXkj5jcz5ZuXIOw,964
|
31
32
|
maps4fs/generator/dtm/italy.py,sha256=GCyEaNNLgNzjvvvpo8JfXTSijqeoG6TheOXNpSUWZaU,1222
|
33
|
+
maps4fs/generator/dtm/mv.py,sha256=6ropUQGY_cnkvzmZqiYg53MxzkP2tXXzslVaAbJPd1E,1362
|
32
34
|
maps4fs/generator/dtm/niedersachsen.py,sha256=8HS8suZU3lKe2mPR1FVCSNHSsW5AuebIu_De3mpCQe8,1273
|
33
35
|
maps4fs/generator/dtm/norway.py,sha256=kSsNZGEqb3IQ3a82UCJ_Iw_0wqdCgEvuRJ4JpEK7QYU,1269
|
34
36
|
maps4fs/generator/dtm/nrw.py,sha256=1zMa10O0NdQbiTwOa7XXGrx3NhdHUqRXI4yBn_Scb2M,958
|
@@ -44,8 +46,8 @@ maps4fs/toolbox/__init__.py,sha256=zZMLEkGzb4z0xql650gOtGSvcgX58DnJ2yN3vC2daRk,4
|
|
44
46
|
maps4fs/toolbox/background.py,sha256=RclEqxEWLbMxuEkkegQP8jybzugwQ1_R3rdfDe0s21U,2104
|
45
47
|
maps4fs/toolbox/custom_osm.py,sha256=X6ZlPqiOhNjkmdD_qVroIfdOl9Rb90cDwVSLDVYgx80,1892
|
46
48
|
maps4fs/toolbox/dem.py,sha256=z9IPFNmYbjiigb3t02ZenI3Mo8odd19c5MZbjDEovTo,3525
|
47
|
-
maps4fs-1.8.
|
48
|
-
maps4fs-1.8.
|
49
|
-
maps4fs-1.8.
|
50
|
-
maps4fs-1.8.
|
51
|
-
maps4fs-1.8.
|
49
|
+
maps4fs-1.8.185.dist-info/LICENSE.md,sha256=pTKD_oUexcn-yccFCTrMeLkZy0ifLRa-VNcDLqLZaIw,10749
|
50
|
+
maps4fs-1.8.185.dist-info/METADATA,sha256=YmO48up_xnl4GkR49Mpe5zbpdFxXn0TTWu_FaKbMvyo,44584
|
51
|
+
maps4fs-1.8.185.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
52
|
+
maps4fs-1.8.185.dist-info/top_level.txt,sha256=Ue9DSRlejRQRCaJueB0uLcKrWwsEq9zezfv5dI5mV1M,8
|
53
|
+
maps4fs-1.8.185.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|