maps4fs 1.8.252__py3-none-any.whl → 1.9.0__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.
@@ -15,8 +15,8 @@ from trimesh import Trimesh
15
15
 
16
16
  from maps4fs.generator.component.base.component_image import ImageComponent
17
17
  from maps4fs.generator.component.base.component_mesh import MeshComponent
18
+ from maps4fs.generator.component.dem import DEM
18
19
  from maps4fs.generator.component.texture import Texture
19
- from maps4fs.generator.dem import DEM
20
20
  from maps4fs.generator.settings import Parameters
21
21
 
22
22
 
@@ -138,3 +138,26 @@ class ImageComponent(Component):
138
138
  if dst_image is not None:
139
139
  dst_image[border_slice][src_image[border_slice] != 0] = 255
140
140
  src_image[border_slice] = 0
141
+
142
+ def apply_blur(
143
+ self, data: np.ndarray, blur_radius: int, sigma_x: int = 10, sigma_y: int = 10
144
+ ) -> np.ndarray:
145
+ """Apply blur to DEM data.
146
+
147
+ Arguments:
148
+ data (np.ndarray): DEM data.
149
+ blur_radius (int): Radius of the blur.
150
+ sigma_x (int, optional): Standard deviation in X direction. Defaults to 10.
151
+ sigma_y (int, optional): Standard deviation in Y direction. Defaults to 10.
152
+
153
+ Returns:
154
+ np.ndarray: Blurred DEM data.
155
+ """
156
+ if blur_radius == 0:
157
+ return data
158
+
159
+ blurred_data = cv2.GaussianBlur(
160
+ data, (blur_radius, blur_radius), sigmaX=sigma_x, sigmaY=sigma_y
161
+ )
162
+
163
+ return blurred_data
@@ -9,12 +9,12 @@ import numpy as np
9
9
  # import rasterio # type: ignore
10
10
  from pympler import asizeof # type: ignore
11
11
 
12
- from maps4fs.generator.component.base.component import Component
12
+ from maps4fs.generator.component.base.component_image import ImageComponent
13
13
  from maps4fs.generator.dtm.dtm import DTMProvider
14
14
 
15
15
 
16
16
  # pylint: disable=R0903, R0902
17
- class DEM(Component):
17
+ class DEM(ImageComponent):
18
18
  """Component for processing Digital Elevation Model data.
19
19
 
20
20
  Arguments:
@@ -200,7 +200,7 @@ class DEM(Component):
200
200
  self.update_info("normalized", resampled_data)
201
201
 
202
202
  # 6. Blur DEM data.
203
- resampled_data = self.apply_blur(resampled_data)
203
+ resampled_data = self.apply_blur(resampled_data, blur_radius=self.blur_radius)
204
204
 
205
205
  cv2.imwrite(self._dem_path, resampled_data)
206
206
  self.logger.debug("DEM data was saved to %s.", self._dem_path)
@@ -316,35 +316,6 @@ class DEM(Component):
316
316
 
317
317
  return resampled_data
318
318
 
319
- def apply_blur(self, data: np.ndarray) -> np.ndarray:
320
- """Apply blur to DEM data.
321
-
322
- Arguments:
323
- data (np.ndarray): DEM data.
324
-
325
- Returns:
326
- np.ndarray: Blurred DEM data.
327
- """
328
- if self.blur_radius == 0:
329
- return data
330
-
331
- self.logger.debug(
332
- "Applying Gaussion blur to DEM data with kernel size %s.",
333
- self.blur_radius,
334
- )
335
-
336
- blurred_data = cv2.GaussianBlur(
337
- data, (self.blur_radius, self.blur_radius), sigmaX=10, sigmaY=10
338
- )
339
- self.logger.debug(
340
- "DEM data was blurred. Shape: %s, dtype: %s. Min: %s, max: %s.",
341
- blurred_data.shape,
342
- blurred_data.dtype,
343
- blurred_data.min(),
344
- blurred_data.max(),
345
- )
346
- return blurred_data
347
-
348
319
  def rotate_dem(self) -> None:
349
320
  """Rotate DEM image."""
350
321
  self.logger.debug("Rotating DEM image by %s degrees.", self.rotation)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: maps4fs
3
- Version: 1.8.252
3
+ Version: 1.9.0
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
@@ -1,15 +1,15 @@
1
1
  maps4fs/__init__.py,sha256=EGvLVoRpSt4jITswsGbe1ISVmGAZAMQJcBmTwtyuVxI,335
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=CDfdDGCWhFn2_QYY5TtxgsXm3lgJ4W4qD-46UU3u-ck,13207
5
4
  maps4fs/generator/game.py,sha256=NZaxj5z7WzMiHzAvQyr-TvVjGoHgqGldM6ZsItuYyzA,11292
6
5
  maps4fs/generator/map.py,sha256=64uIHCwfpFyFXZJSayB0tuRFn0LVuTwf0wrAi4KMv00,13600
7
6
  maps4fs/generator/qgis.py,sha256=Es8hLuqN_KH8lDfnJE6He2rWYbAKJ3RGPn-o87S6CPI,6116
8
7
  maps4fs/generator/settings.py,sha256=E5sfkfJgcjh9QHpa7ILlV_jnrF6USpsOFxkooVnxrbs,6968
9
8
  maps4fs/generator/statistics.py,sha256=aynS3zbAtiwnU_YLKHPTiiaKW98_suvQUhy1SGBA6mc,2448
10
9
  maps4fs/generator/component/__init__.py,sha256=s01yVVVi8R2xxNvflu2D6wTd9I_g73AMM2x7vAC7GX4,490
11
- maps4fs/generator/component/background.py,sha256=hsyNmHgi9NUcp3SoSawJeCDJY3tJNDMwmb_x1ovi0Fg,22852
10
+ maps4fs/generator/component/background.py,sha256=_QK9pqWs5SeJFljOJS8woImK7kkU37ZIo4QMux4dACw,22862
12
11
  maps4fs/generator/component/config.py,sha256=RitKgFDZPzjA1fi8GcEi1na75qqaueUvpcITHjBvCXc,3674
12
+ maps4fs/generator/component/dem.py,sha256=zUKRwVT5DC5VpZMo79zKipxGW0Waw0Pxn10RIEB3wrQ,12430
13
13
  maps4fs/generator/component/grle.py,sha256=99CFheRn2aDuE041iZj2usmh5spKSryKg3L848jVWdg,19475
14
14
  maps4fs/generator/component/i3d.py,sha256=iVXYYGzDpSp5J7vAo_LFnDA8GDAy43Y6aUIf7yP_ZTI,23101
15
15
  maps4fs/generator/component/layer.py,sha256=hbTBMLamKOWv_MXbnk-LjLyNV91jPsF33UEc17rBZCM,6185
@@ -17,7 +17,7 @@ maps4fs/generator/component/satellite.py,sha256=oZBHjP_QY0ik1-Vk7JqMS__zIG8ffw2v
17
17
  maps4fs/generator/component/texture.py,sha256=ELU5QwysZaMPH9QQkE5jzIHAOzZ_Y8khcT9ruZuxQpQ,31803
18
18
  maps4fs/generator/component/base/__init__.py,sha256=zZMLEkGzb4z0xql650gOtGSvcgX58DnJ2yN3vC2daRk,43
19
19
  maps4fs/generator/component/base/component.py,sha256=CIR4Fjn9YfLU4y7nB_jOaz7PjGFvBcDnHlvXxeahpdM,21499
20
- maps4fs/generator/component/base/component_image.py,sha256=2QnJ9xm0D54v4whg7bc1s-kwRVjZHhOo1OR5jHr1Qp0,4786
20
+ maps4fs/generator/component/base/component_image.py,sha256=AMYrStFSfeE_G34JKN5CJFFB6ZCTof-fJwMVKq3Y2H4,5521
21
21
  maps4fs/generator/component/base/component_mesh.py,sha256=BsxS5NlUK2hLhksgCwSoMK-00GNAwK2fYGpgb3R4n1w,9396
22
22
  maps4fs/generator/component/base/component_xml.py,sha256=6OO1dKoceO1ACk7-k1oGtnkfNud8ZN3u3ZNjdNMpTqw,3967
23
23
  maps4fs/generator/dtm/__init__.py,sha256=CzK8ZdLU5Iv7DrwK5hIQ41zVsLRFgZO-IuRxf-NCVqg,1516
@@ -54,8 +54,8 @@ maps4fs/toolbox/__init__.py,sha256=zZMLEkGzb4z0xql650gOtGSvcgX58DnJ2yN3vC2daRk,4
54
54
  maps4fs/toolbox/background.py,sha256=RclEqxEWLbMxuEkkegQP8jybzugwQ1_R3rdfDe0s21U,2104
55
55
  maps4fs/toolbox/custom_osm.py,sha256=X6ZlPqiOhNjkmdD_qVroIfdOl9Rb90cDwVSLDVYgx80,1892
56
56
  maps4fs/toolbox/dem.py,sha256=z9IPFNmYbjiigb3t02ZenI3Mo8odd19c5MZbjDEovTo,3525
57
- maps4fs-1.8.252.dist-info/licenses/LICENSE.md,sha256=pTKD_oUexcn-yccFCTrMeLkZy0ifLRa-VNcDLqLZaIw,10749
58
- maps4fs-1.8.252.dist-info/METADATA,sha256=mzBKk-bH_1vcnlmLvPM9WRrvKIpmaPU2mhDcCzAxSSQ,47443
59
- maps4fs-1.8.252.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
60
- maps4fs-1.8.252.dist-info/top_level.txt,sha256=Ue9DSRlejRQRCaJueB0uLcKrWwsEq9zezfv5dI5mV1M,8
61
- maps4fs-1.8.252.dist-info/RECORD,,
57
+ maps4fs-1.9.0.dist-info/licenses/LICENSE.md,sha256=pTKD_oUexcn-yccFCTrMeLkZy0ifLRa-VNcDLqLZaIw,10749
58
+ maps4fs-1.9.0.dist-info/METADATA,sha256=Wd59mYegea9cIBPQSnHkHy_dIiDGttopm-vEcwYLyQM,47441
59
+ maps4fs-1.9.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
60
+ maps4fs-1.9.0.dist-info/top_level.txt,sha256=Ue9DSRlejRQRCaJueB0uLcKrWwsEq9zezfv5dI5mV1M,8
61
+ maps4fs-1.9.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.1.0)
2
+ Generator: setuptools (79.0.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5