wolfhece 2.2.14__py3-none-any.whl → 2.2.16__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.
- wolfhece/Model1D.py +12 -12
- wolfhece/PyDraw.py +200 -3
- wolfhece/PyGui.py +9 -1
- wolfhece/PyVertexvectors.py +6 -4
- wolfhece/PyWMS.py +633 -2
- wolfhece/__init__.py +1 -1
- wolfhece/apps/version.py +1 -1
- wolfhece/apps/wolf.py +1 -1
- wolfhece/assets/__init__.py +0 -1
- wolfhece/assets/mesh.py +685 -0
- wolfhece/friction_law.py +3 -3
- wolfhece/hydrology/SubBasin.py +154 -154
- wolfhece/hydrometry/kiwis.py +55 -16
- wolfhece/hydrometry/kiwis_wolfgui.py +8 -7
- wolfhece/lazviewer/laz_viewer.py +4 -4
- wolfhece/mesh2d/wolf2dprev.py +23 -0
- wolfhece/pyshields.py +38 -2
- wolfhece/wolf_array.py +19 -16
- wolfhece/wolf_texture.py +74 -13
- wolfhece/wolfresults_2D.py +220 -74
- {wolfhece-2.2.14.dist-info → wolfhece-2.2.16.dist-info}/METADATA +2 -3
- {wolfhece-2.2.14.dist-info → wolfhece-2.2.16.dist-info}/RECORD +25 -24
- {wolfhece-2.2.14.dist-info → wolfhece-2.2.16.dist-info}/WHEEL +1 -1
- {wolfhece-2.2.14.dist-info → wolfhece-2.2.16.dist-info}/entry_points.txt +0 -0
- {wolfhece-2.2.14.dist-info → wolfhece-2.2.16.dist-info}/top_level.txt +0 -0
wolfhece/Model1D.py
CHANGED
@@ -1860,7 +1860,7 @@ class Creator_1D:
|
|
1860
1860
|
format ='zones',
|
1861
1861
|
save_as: str='',
|
1862
1862
|
return_list = True) -> list[crosssections]: # FIXME list of cross sections
|
1863
|
-
"""
|
1863
|
+
r"""
|
1864
1864
|
Save each `Zone` in `Zones` as a cross sections file and,
|
1865
1865
|
return a list of cross sections.
|
1866
1866
|
|
@@ -2530,7 +2530,7 @@ class Creator_1D:
|
|
2530
2530
|
return file_path
|
2531
2531
|
|
2532
2532
|
def count_lists_in_list(self, lst: list[list], nodes_1D = False) -> int:
|
2533
|
-
"""
|
2533
|
+
r"""
|
2534
2534
|
Return the sum of lengths of lists in a list.
|
2535
2535
|
- /!\ Attention for 1D nodes (nodes_1D),
|
2536
2536
|
the number of nodes is the number
|
@@ -2602,7 +2602,7 @@ class Creator_1D:
|
|
2602
2602
|
def _write_relations_profiles(self,
|
2603
2603
|
crosses:list[list[profile]],
|
2604
2604
|
save_as:str) -> None:
|
2605
|
-
"""
|
2605
|
+
r"""
|
2606
2606
|
/!\ Has been deprecated.
|
2607
2607
|
|
2608
2608
|
- Write the HSPW (Heigh, wetted Section, wetted Perimeter, top Width)relations
|
@@ -2680,7 +2680,7 @@ class Creator_1D:
|
|
2680
2680
|
def __write_relations_profiles(self,
|
2681
2681
|
crosses:list[list[profile]],
|
2682
2682
|
save_as:str) -> None:
|
2683
|
-
"""
|
2683
|
+
r"""
|
2684
2684
|
/!\ Has been deprecated.
|
2685
2685
|
|
2686
2686
|
- Write the HSPW (Height, wetted Section, wetted Perimeter, top Width)relations
|
@@ -3285,7 +3285,7 @@ class Creator_1D:
|
|
3285
3285
|
raise Exception('Define a writing a method!')
|
3286
3286
|
|
3287
3287
|
def read_hydrograph_from_textfile(self, file:str)-> list[list[list,list]]: # FIXME nameread discharges from
|
3288
|
-
"""
|
3288
|
+
r"""
|
3289
3289
|
Return a hydrograph from a text file.
|
3290
3290
|
/!\ The file should be on the wolf hydrograph format.
|
3291
3291
|
|
@@ -3401,7 +3401,7 @@ class Creator_1D:
|
|
3401
3401
|
save_as: str,
|
3402
3402
|
writing_method: Literal['continuous', 'stepwise'] = 'continuous',
|
3403
3403
|
epsilon:float = 0.01):
|
3404
|
-
"""
|
3404
|
+
r"""
|
3405
3405
|
- Write the infiltration files (.inf, .infil, .tv) and,
|
3406
3406
|
- Apply the preprocessing mode to the hydrographs before writing them.
|
3407
3407
|
|
@@ -4201,7 +4201,7 @@ class Creator_1D:
|
|
4201
4201
|
raise Exception(_('Bad type of boundary condition.'))
|
4202
4202
|
|
4203
4203
|
def write_width_file(self, crosses:list[list[profile]], width:float , save_as:str):
|
4204
|
-
'''
|
4204
|
+
r'''
|
4205
4205
|
Write the width file (.width file).
|
4206
4206
|
- The width is constant for all the profiles
|
4207
4207
|
|
@@ -4597,7 +4597,7 @@ class Creator_1D:
|
|
4597
4597
|
logging.info(f'{directory} removed.')
|
4598
4598
|
|
4599
4599
|
def find_1D_binary_results(self, directory:str) -> tuple[str]: #FIXME find why self is not working
|
4600
|
-
"""
|
4600
|
+
r"""
|
4601
4601
|
/!\ This method has been deprecated.
|
4602
4602
|
Return a tuple containing the paths to the model:
|
4603
4603
|
|
@@ -4627,7 +4627,7 @@ class Creator_1D:
|
|
4627
4627
|
return (head_file,results_depths, results_discharges, results_wetted_sections)
|
4628
4628
|
|
4629
4629
|
def read_1D_binary_results(self, results: list[str]) -> tuple[np.ndarray]:
|
4630
|
-
'''
|
4630
|
+
r'''
|
4631
4631
|
/!\ This method has been deprecated. Check the the class` Wolfresults_1D` for the new implementation.
|
4632
4632
|
Return a tuple containing the simulated results as numpy arrays in this order:
|
4633
4633
|
- 0. Nodes coordinates (np.ndarray),
|
@@ -4701,7 +4701,7 @@ class Creator_1D:
|
|
4701
4701
|
landmark:Zones = None,
|
4702
4702
|
banks: Zones = None,
|
4703
4703
|
dpi: float = Constants.DPI.value ) -> None:
|
4704
|
-
"""
|
4704
|
+
r"""
|
4705
4705
|
/!\ This method has been deprecated. Check the the class` Wolfresults_1D` for the new implementation.
|
4706
4706
|
Plot the results of 1D model either:
|
4707
4707
|
- as a gif (evolution of all parameters)
|
@@ -5040,7 +5040,7 @@ class Creator_1D:
|
|
5040
5040
|
which_nodes:list[int] = [0,-1],
|
5041
5041
|
save_as:str ='',
|
5042
5042
|
figure_size = (20,10)):
|
5043
|
-
"""
|
5043
|
+
r"""
|
5044
5044
|
/!\ This method has been deprecated. Check the the class` Wolfresults_1D` for the new implementation.
|
5045
5045
|
|
5046
5046
|
Plot the hydrographs of the nodes.
|
@@ -8907,7 +8907,7 @@ class Wolfresults_1D:
|
|
8907
8907
|
figsize:tuple = (20,10),
|
8908
8908
|
alpha:float = 0.3,
|
8909
8909
|
save_as:str=''):
|
8910
|
-
"""
|
8910
|
+
r"""
|
8911
8911
|
/!\ Deprecating
|
8912
8912
|
Animate the selected variables in figures, save them as a file and
|
8913
8913
|
return the information associated with their axes.
|
wolfhece/PyDraw.py
CHANGED
@@ -92,6 +92,8 @@ try:
|
|
92
92
|
from .math_parser.calculator import Calculator
|
93
93
|
from .wintab.wintab import Wintab
|
94
94
|
from .images_tiles import ImagesTiles
|
95
|
+
from .PyWMS import Alaro_Navigator, get_Alaro_legend
|
96
|
+
|
95
97
|
except ImportError as e:
|
96
98
|
print(e)
|
97
99
|
raise ImportError("Error importing wolf_texture, xyz_file, mesh2d, PyPalette, wolfresults_2D, PyTranslate, PyVertex, RatingCurve, wolf_array, PyParams, mesh2d.bc_manager, PyVertexvectors, Results2DGPU, PyCrosssections, GraphNotebook, lazviewer, picc, wolf_zi_db, math_parser.calculator, wintab. Please check your installation.")
|
@@ -996,7 +998,7 @@ class Sim_Explorer(wx.Frame):
|
|
996
998
|
secax.tick_params(axis='x', rotation=30)
|
997
999
|
|
998
1000
|
ax[1].plot(main_x, self.active_res2d.all_dt, 'o-')
|
999
|
-
ax[1].set_ylabel(_('$\Delta t$ [s]'), fontsize=8)
|
1001
|
+
ax[1].set_ylabel(_(r'$\Delta t$ [s]'), fontsize=8)
|
1000
1002
|
ax[1].grid(which='both')
|
1001
1003
|
ax[1].set_xticks(main_x)
|
1002
1004
|
ax[1].set_xticklabels([])
|
@@ -1956,6 +1958,8 @@ class WolfMapViewer(wx.Frame):
|
|
1956
1958
|
|
1957
1959
|
active_fig: MplFigViewer
|
1958
1960
|
|
1961
|
+
alaro_navigator: Alaro_Navigator
|
1962
|
+
|
1959
1963
|
|
1960
1964
|
# def check_user_activity(self, *args):
|
1961
1965
|
# while True:
|
@@ -2008,8 +2012,6 @@ class WolfMapViewer(wx.Frame):
|
|
2008
2012
|
self.treewidth = treewidth
|
2009
2013
|
super(WolfMapViewer, self).__init__(wxparent, title=title, size=(w + self.treewidth, h))
|
2010
2014
|
|
2011
|
-
self._tmp_vector_distance = None # distance computation the vector
|
2012
|
-
|
2013
2015
|
self._wxlogging = wxlogging
|
2014
2016
|
self.action = None # Action à entreprendre
|
2015
2017
|
self.update_absolute_minmax = False # Force la MAJ de la palette
|
@@ -2092,6 +2094,8 @@ class WolfMapViewer(wx.Frame):
|
|
2092
2094
|
self.menudrowning = None
|
2093
2095
|
self.menudike = None
|
2094
2096
|
|
2097
|
+
self.alaro_navigator = None
|
2098
|
+
|
2095
2099
|
self.filemenu = wx.Menu()
|
2096
2100
|
openitem = self.filemenu.Append(wx.ID_OPEN, _('Open/Add project'), _('Open a full project from file'))
|
2097
2101
|
saveproject = self.filemenu.Append(wx.ID_ANY, _('Save project as...'), _('Save the current project to file'))
|
@@ -2223,6 +2227,10 @@ class WolfMapViewer(wx.Frame):
|
|
2223
2227
|
self.menu_contour_from_arrays = self.tools_menu.Append(wx.ID_ANY, _("Create contour from checked arrays..."), _("Create contour"))
|
2224
2228
|
self.menu_calculator = self.tools_menu.Append(wx.ID_ANY, _("Calculator..."), _("Calculator"))
|
2225
2229
|
self.menu_views = self.tools_menu.Append(wx.ID_ANY, _("Memory views..."), _("Memory views"))
|
2230
|
+
|
2231
|
+
self.menu_distances = self.tools_menu.Append(wx.ID_ANY, _("Memory distances..."), _("Memory distances"))
|
2232
|
+
self.menu_distances_add = self.tools_menu.Append(wx.ID_ANY, _("Add distances to viewer..."), _("Add memory distances"))
|
2233
|
+
|
2226
2234
|
self.menu_digitizer = self.tools_menu.Append(wx.ID_ANY, _("Image digitizer..."), _("Image Digitizer"))
|
2227
2235
|
self.calculator = None
|
2228
2236
|
self.memory_views = None
|
@@ -2484,6 +2492,10 @@ class WolfMapViewer(wx.Frame):
|
|
2484
2492
|
|
2485
2493
|
self.InitUI()
|
2486
2494
|
|
2495
|
+
self._tmp_vector_distance = None # distance computation the vector
|
2496
|
+
self._distances = Zones(mapviewer=self, idx=_('Distances/Areas'))
|
2497
|
+
self._distances.add_zone(zone(name='memory distances', parent=self._distances)) # distances memory
|
2498
|
+
|
2487
2499
|
# self._wintab = Wintab(self.GetHandle())
|
2488
2500
|
|
2489
2501
|
# if self._wintab:
|
@@ -5287,6 +5299,111 @@ class WolfMapViewer(wx.Frame):
|
|
5287
5299
|
'2022': '2022',
|
5288
5300
|
}}
|
5289
5301
|
|
5302
|
+
"""cat:Literal['orthoimage_coverage',
|
5303
|
+
'orthoimage_coverage_2016',
|
5304
|
+
'orthoimage_coverage_2017',
|
5305
|
+
'orthoimage_coverage_2018',
|
5306
|
+
'orthoimage_coverage_2019',
|
5307
|
+
'orthoimage_coverage_2020',
|
5308
|
+
'orthoimage_coverage_2021',
|
5309
|
+
'orthoimage_coverage_2022']
|
5310
|
+
"""
|
5311
|
+
ign_belgique = {'Orthophotos': {'Last': 'orthoimage_coverage',
|
5312
|
+
'2016': 'orthoimage_coverage_2016',
|
5313
|
+
'2017': 'orthoimage_coverage_2017',
|
5314
|
+
'2018': 'orthoimage_coverage_2018',
|
5315
|
+
'2019': 'orthoimage_coverage_2019',
|
5316
|
+
'2020': 'orthoimage_coverage_2020',
|
5317
|
+
'2021': 'orthoimage_coverage_2021',
|
5318
|
+
'2022': 'orthoimage_coverage_2022',}}
|
5319
|
+
|
5320
|
+
""" ['crossborder',
|
5321
|
+
'crossborder_grey',
|
5322
|
+
'overlay',
|
5323
|
+
'topo',
|
5324
|
+
'topo_grey']"""
|
5325
|
+
ign_cartoweb = {'CartoWeb': {'Crossborder': 'crossborder',
|
5326
|
+
'Crossborder Grey': 'crossborder_grey',
|
5327
|
+
'Overlay': 'overlay',
|
5328
|
+
'Topographic': 'topo',
|
5329
|
+
'Topographic Grey': 'topo_grey',}}
|
5330
|
+
|
5331
|
+
ign_postflood2021 = {'PostFlood2021': {'Flood 2021': 'orthoimage_flood'}}
|
5332
|
+
|
5333
|
+
"""
|
5334
|
+
['10_m_u__wind_component',
|
5335
|
+
'10_m_v__wind_component',
|
5336
|
+
'2_m_Max_temp_since_ppp',
|
5337
|
+
'2_m_Min_temp_since_ppp',
|
5338
|
+
'2_m_dewpoint_temperature',
|
5339
|
+
'2_m_temperature',
|
5340
|
+
'2m_Relative_humidity',
|
5341
|
+
'Convective_rain',
|
5342
|
+
'Convective_snow',
|
5343
|
+
'Geopotential',
|
5344
|
+
'Inst_flx_Conv_Cld_Cover',
|
5345
|
+
'Inst_flx_High_Cld_Cover',
|
5346
|
+
'Inst_flx_Low_Cld_Cover',
|
5347
|
+
'Inst_flx_Medium_Cld_Cover',
|
5348
|
+
'Inst_flx_Tot_Cld_cover',
|
5349
|
+
'Large_scale_rain',
|
5350
|
+
'Large_scale_snow',
|
5351
|
+
'Mean_sea_level_pressure',
|
5352
|
+
'Relative_humidity',
|
5353
|
+
'Relative_humidity_isobaric',
|
5354
|
+
'SBL_Meridian_gust',
|
5355
|
+
'SBL_Zonal_gust',
|
5356
|
+
'Specific_humidity',
|
5357
|
+
'Surf_Solar_radiation',
|
5358
|
+
'Surf_Thermal_radiation',
|
5359
|
+
'Surface_CAPE',
|
5360
|
+
'Surface_Temperature',
|
5361
|
+
'Surface_orography',
|
5362
|
+
'Temperature',
|
5363
|
+
'Total_precipitation',
|
5364
|
+
'U-velocity',
|
5365
|
+
'V-velocity',
|
5366
|
+
'Vertical_velocity',
|
5367
|
+
'Wet_Bulb_Poten_Temper',
|
5368
|
+
'freezing_level_zeroDegC_isotherm'],
|
5369
|
+
"""
|
5370
|
+
alaro = {'ALARO': {'10m_u_wind_component': '10_m_u__wind_component',
|
5371
|
+
'10m_v_wind_component': '10_m_v__wind_component',
|
5372
|
+
'2m_Max_temp_since_ppp': '2_m_Max_temp_since_ppp',
|
5373
|
+
'2m_Min_temp_since_ppp': '2_m_Min_temp_since_ppp',
|
5374
|
+
'2m_dewpoint_temperature': '2_m_dewpoint_temperature',
|
5375
|
+
'2m_temperature': '2_m_temperature',
|
5376
|
+
'2m_Relative_humidity': '2m_Relative_humidity',
|
5377
|
+
'Convective_rain': 'Convective_rain',
|
5378
|
+
'Convective_snow': 'Convective_snow',
|
5379
|
+
'Geopotential': 'Geopotential',
|
5380
|
+
'Inst_flx_Conv_Cld_Cover': 'Inst_flx_Conv_Cld_Cover',
|
5381
|
+
'Inst_flx_High_Cld_Cover': 'Inst_flx_High_Cld_Cover',
|
5382
|
+
'Inst_flx_Low_Cld_Cover': 'Inst_flx_Low_Cld_Cover',
|
5383
|
+
'Inst_flx_Medium_Cld_Cover': 'Inst_flx_Medium_Cld_Cover',
|
5384
|
+
'Inst_flx_Tot_Cld_cover': 'Inst_flx_Tot_Cld_cover',
|
5385
|
+
'Large_scale_rain': 'Large_scale_rain',
|
5386
|
+
'Large_scale_snow': 'Large_scale_snow',
|
5387
|
+
'Mean_sea_level_pressure': 'Mean_sea_level_pressure',
|
5388
|
+
'Relative_humidity': 'Relative_humidity',
|
5389
|
+
'Relative_humidity_isobaric': 'Relative_humidity_isobaric',
|
5390
|
+
'SBL_Meridian_gust': 'SBL_Meridian_gust',
|
5391
|
+
'SBL_Zonal_gust': 'SBL_Zonal_gust',
|
5392
|
+
'Specific_humidity': 'Specific_humidity',
|
5393
|
+
'Surf_Solar_radiation': 'Surf_Solar_radiation',
|
5394
|
+
'Surf_Thermal_radiation': 'Surf_Thermal_radiation',
|
5395
|
+
'Surface_CAPE': 'Surface_CAPE',
|
5396
|
+
'Surface_Temperature': 'Surface_Temperature',
|
5397
|
+
'Surface_orography': 'Surface_orography',
|
5398
|
+
'Temperature': 'Temperature',
|
5399
|
+
'Total_precipitation': 'Total_precipitation',
|
5400
|
+
'U-velocity': 'U-velocity',
|
5401
|
+
'V-velocity': 'V-velocity',
|
5402
|
+
'Vertical_velocity': 'Vertical_velocity',
|
5403
|
+
'Wet_Bulb_Poten_Temper': 'Wet_Bulb_Poten_Temper',
|
5404
|
+
'freezing_level_zeroDegC_isotherm': 'freezing_level_zeroDegC_isotherm',}}
|
5405
|
+
|
5406
|
+
|
5290
5407
|
for idx, (k, item) in enumerate(orthos.items()):
|
5291
5408
|
for kdx, (m, subitem) in enumerate(item.items()):
|
5292
5409
|
self.add_object(which='wmsback',
|
@@ -5308,6 +5425,27 @@ class WolfMapViewer(wx.Frame):
|
|
5308
5425
|
self, xmin, xmax, ymin, ymax, -99999, 1024, LifeWatch=True),
|
5309
5426
|
ToCheck=False, id='LifeWatch LC' + m)
|
5310
5427
|
|
5428
|
+
for idx, (k, item) in enumerate(ign_belgique.items()):
|
5429
|
+
for kdx, (m, subitem) in enumerate(item.items()):
|
5430
|
+
self.add_object(which='wmsback',
|
5431
|
+
newobj=imagetexture('Orthos IGN', m, k, subitem,
|
5432
|
+
self, xmin, xmax, ymin, ymax, -99999, 1024, IGN_Belgium=True),
|
5433
|
+
ToCheck=False, id='IGN ' + m)
|
5434
|
+
|
5435
|
+
for idx, (k, item) in enumerate(ign_cartoweb.items()):
|
5436
|
+
for kdx, (m, subitem) in enumerate(item.items()):
|
5437
|
+
self.add_object(which='wmsback',
|
5438
|
+
newobj=imagetexture('Cartoweb IGN', m, k, subitem,
|
5439
|
+
self, xmin, xmax, ymin, ymax, -99999, 1024, IGN_Cartoweb=True),
|
5440
|
+
ToCheck=False, id='IGN ' + m)
|
5441
|
+
|
5442
|
+
for idx, (k, item) in enumerate(ign_postflood2021.items()):
|
5443
|
+
for kdx, (m, subitem) in enumerate(item.items()):
|
5444
|
+
self.add_object(which='wmsback',
|
5445
|
+
newobj=imagetexture('IGN 2021', m, k, subitem,
|
5446
|
+
self, xmin, xmax, ymin, ymax, -99999, 1024, postFlood2021=True),
|
5447
|
+
ToCheck=False, id='orthos post2021')
|
5448
|
+
|
5311
5449
|
self.add_object(which='wmsback',
|
5312
5450
|
newobj=imagetexture('PPNC', 'Orthos France', 'OI.OrthoimageCoverage.HR', '',
|
5313
5451
|
self, xmin, xmax, ymin, ymax, -99999, 1024, France=True, epsg='EPSG:27563'),
|
@@ -5331,6 +5469,20 @@ class WolfMapViewer(wx.Frame):
|
|
5331
5469
|
self, xmin, xmax, ymin, ymax, -99999, 1024),
|
5332
5470
|
ToCheck=False, id=m)
|
5333
5471
|
|
5472
|
+
for idx, (k, item) in enumerate(alaro.items()):
|
5473
|
+
for kdx, (m, subitem) in enumerate(item.items()):
|
5474
|
+
self.add_object(which='wmsfore',
|
5475
|
+
newobj=imagetexture('ALARO', m, k, subitem,
|
5476
|
+
self, xmin, xmax, ymin, ymax, -99999, 1024, Alaro=True),
|
5477
|
+
ToCheck=False, id='ALARO ' + m)
|
5478
|
+
|
5479
|
+
for idx, (k, item) in enumerate(ign_cartoweb.items()):
|
5480
|
+
for kdx, (m, subitem) in enumerate(item.items()):
|
5481
|
+
self.add_object(which='wmsfore',
|
5482
|
+
newobj=imagetexture('Cartoweb', m, k, subitem,
|
5483
|
+
self, xmin, xmax, ymin, ymax, -99999, 1024, IGN_Cartoweb=True),
|
5484
|
+
ToCheck=False, id='IGN_f ' + m)
|
5485
|
+
|
5334
5486
|
# self.add_object(which='wmsfore',
|
5335
5487
|
# newobj=imagetexture('Cadastre Flandres', 'Plan Parcellaire 2024 (Flandres)', 'Adpf', '',
|
5336
5488
|
# self, xmin, xmax, ymin, ymax, -99999, 1024, Vlaanderen=True),
|
@@ -8309,6 +8461,20 @@ class WolfMapViewer(wx.Frame):
|
|
8309
8461
|
|
8310
8462
|
self._memory_views_gui.Show()
|
8311
8463
|
|
8464
|
+
elif itemlabel == _("Memory distances..."):
|
8465
|
+
|
8466
|
+
if self._distances is not None:
|
8467
|
+
if self._distances[-1].nbvectors == 0:
|
8468
|
+
logging.warning(_('No vector to show !'))
|
8469
|
+
return
|
8470
|
+
|
8471
|
+
self._distances.showstructure(self)
|
8472
|
+
|
8473
|
+
elif itemlabel == _("Add distances to viewer..."):
|
8474
|
+
|
8475
|
+
if self._distances is not None:
|
8476
|
+
self.add_object('vector', newobj=self._distances, ToCheck=True, id='Distances')
|
8477
|
+
|
8312
8478
|
elif itemlabel == _("Create bridge and export gltf..."):
|
8313
8479
|
|
8314
8480
|
if self.active_cs is None:
|
@@ -11477,8 +11643,32 @@ class WolfMapViewer(wx.Frame):
|
|
11477
11643
|
size = float(dlg.GetValue())
|
11478
11644
|
curobj.creategrid(size, self.xmin, self.ymin, self.xmax, self.ymax)
|
11479
11645
|
|
11646
|
+
if 'alaro' in curobj.idx and check:
|
11647
|
+
if self.alaro_navigator is None:
|
11648
|
+
self.alaro_navigator = Alaro_Navigator(self, curobj.idx, 'Alaro')
|
11649
|
+
self.alaro_navigator.Show()
|
11650
|
+
|
11480
11651
|
self.Refresh()
|
11481
11652
|
|
11653
|
+
def _alaro_update_time(self):
|
11654
|
+
""" Update the time of the alaro navigator """
|
11655
|
+
|
11656
|
+
objs = self.get_list_objects(drawing_type=draw_type.WMSFORE, checked_state=True)
|
11657
|
+
for obj in objs:
|
11658
|
+
obj.time = self.alaro_navigator.time_str
|
11659
|
+
obj.alpha = self.alaro_navigator.alpha
|
11660
|
+
obj.force_alpha = True
|
11661
|
+
|
11662
|
+
self._update_foreground()
|
11663
|
+
self.Paint()
|
11664
|
+
|
11665
|
+
def _alaro_legends(self):
|
11666
|
+
""" Show images of the checked alaro layers"""
|
11667
|
+
objs = self.get_list_objects(drawing_type=draw_type.WMSFORE, checked_state=True)
|
11668
|
+
for obj in objs:
|
11669
|
+
img = Image.open(get_Alaro_legend(obj.idx.replace('alaro ', '')))
|
11670
|
+
img.show()
|
11671
|
+
|
11482
11672
|
def getXY(self, pospix):
|
11483
11673
|
|
11484
11674
|
width, height = self.canvas.GetSize()
|
@@ -12994,6 +13184,13 @@ class WolfMapViewer(wx.Frame):
|
|
12994
13184
|
|
12995
13185
|
if self.action == 'distance along vector':
|
12996
13186
|
|
13187
|
+
dlg = wx.MessageDialog(None, _('Memorize the vector ?'), _('Confirm'), wx.YES_NO | wx.YES_DEFAULT | wx.ICON_QUESTION)
|
13188
|
+
ret = dlg.ShowModal()
|
13189
|
+
dlg.Destroy()
|
13190
|
+
|
13191
|
+
if ret == wx.ID_YES:
|
13192
|
+
self._distances[-1].add_vector(self._tmp_vector_distance, forceparent=True, update_struct=True)
|
13193
|
+
|
12997
13194
|
self._tmp_vector_distance = None
|
12998
13195
|
|
12999
13196
|
elif self.action == 'pick landmap':
|
wolfhece/PyGui.py
CHANGED
@@ -155,6 +155,8 @@ class GenMapManager(wx.Frame):
|
|
155
155
|
class MapManager(GenMapManager):
|
156
156
|
|
157
157
|
def __init__(self,*args, **kw):
|
158
|
+
|
159
|
+
logging.info("MapManager")
|
158
160
|
super().__init__(*args, **kw)
|
159
161
|
|
160
162
|
icon = wx.Icon()
|
@@ -181,7 +183,7 @@ class MapManager(GenMapManager):
|
|
181
183
|
except:
|
182
184
|
logging.error("No icon for the log window")
|
183
185
|
|
184
|
-
|
186
|
+
logging.info("MapManager - MapViewer created")
|
185
187
|
# Set directory for hydrometry data, relative to the current file
|
186
188
|
dir_data = Path(__file__).parent / "data"
|
187
189
|
dir_hydro = dir_data / "hydrometry"
|
@@ -196,11 +198,16 @@ class MapManager(GenMapManager):
|
|
196
198
|
if not dir_picc.exists():
|
197
199
|
dir_picc.mkdir(parents=True, exist_ok=True)
|
198
200
|
|
201
|
+
logging.info("MapManager - Data directories created")
|
199
202
|
try:
|
200
203
|
self.SPWhydrometry = hydrometry_wolfgui(dir=dir_hydro, idx = 'SPW hydrometry', mapviewer=self.mapviewer, parent = self, plotted=False)
|
204
|
+
logging.info("MapManager - hydrometry_wolfgui created")
|
201
205
|
self.picc = Picc_data(data_dir=dir_picc, mapviewer=self.mapviewer)
|
206
|
+
logging.info("MapManager - Picc_data created")
|
202
207
|
self.cadaster = Cadaster_data(data_dir=dir_cadaster, mapviewer=self.mapviewer)
|
208
|
+
logging.info("MapManager - Cadaster_data created")
|
203
209
|
self.landmaps = PlansTerrier(mapviewer=self.mapviewer, parent = self, idx='LandMaps', plotted=True)
|
210
|
+
logging.info("MapManager - PlansTerrier created")
|
204
211
|
|
205
212
|
self.mapviewer.add_object(which='other',
|
206
213
|
newobj=self.SPWhydrometry,
|
@@ -225,6 +232,7 @@ class MapManager(GenMapManager):
|
|
225
232
|
logging.warning("Can't load some data (hydrometry, picc, cadaster, landmaps) -- Please check the data directories and/or report the issue")
|
226
233
|
|
227
234
|
self.mapviewer.menu_walous()
|
235
|
+
logging.info("MapManager - Menu Walous created")
|
228
236
|
|
229
237
|
# class GPU2DModel(GenMapManager):
|
230
238
|
|
wolfhece/PyVertexvectors.py
CHANGED
@@ -6631,8 +6631,9 @@ class Zones(wx.Frame, Element_To_Draw):
|
|
6631
6631
|
"""
|
6632
6632
|
Affichage des propriétés des zones
|
6633
6633
|
|
6634
|
-
parent
|
6635
|
-
|
6634
|
+
:param parent: soit une instance 'WolfMapViewer', soit une instance 'Ops_Array' --> est utile pour transférer la propriété 'active_vector' et obtenir diverses informations
|
6635
|
+
si parent est d'un autre type, il faut s'assurer que les options/actions sont consistantes
|
6636
|
+
:param forceupdate: si True, on force la mise à jour de la structure
|
6636
6637
|
|
6637
6638
|
"""
|
6638
6639
|
self.showstructure(parent, forceupdate)
|
@@ -6652,8 +6653,9 @@ class Zones(wx.Frame, Element_To_Draw):
|
|
6652
6653
|
"""
|
6653
6654
|
Affichage de la structure des zones
|
6654
6655
|
|
6655
|
-
parent
|
6656
|
-
|
6656
|
+
:param parent: soit une instance 'WolfMapViewer', soit une instance 'Ops_Array' --> est utile pour transférer la propriété 'active_vector' et obtenir diverses informations
|
6657
|
+
si parent est d'un autre type, il faut s'assurer que les options/actions sont consistantes
|
6658
|
+
:param forceupdate: si True, on force la mise à jour de la structure
|
6657
6659
|
|
6658
6660
|
"""
|
6659
6661
|
if self.parent is None:
|