wolfhece 2.2.35__py3-none-any.whl → 2.2.37__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/PyDraw.py CHANGED
@@ -12229,6 +12229,46 @@ class WolfMapViewer(wx.Frame):
12229
12229
  self.selected_object.active_vector.parentzone.add_vector(vec_raster, forceparent=True, update_struct=True)
12230
12230
  self.selected_object.active_vector.parentzone.reset_listogl()
12231
12231
 
12232
+ elif _('Extrude on active array') in text:
12233
+
12234
+ if isinstance(self.selected_object, Picc_data):
12235
+
12236
+ if self.active_array is None:
12237
+ logging.warning(_('No active array selected'))
12238
+ return
12239
+
12240
+ logging.info(_('Extruding polygons on active array'))
12241
+ logging.info(_('Please wait, it could take some time...'))
12242
+ self.selected_object.extrude_polygons(self.active_array)
12243
+ logging.info(_('Extrusion done !'))
12244
+
12245
+ self.active_array.reset_plot()
12246
+ self.Refresh()
12247
+
12248
+ elif _('Interpolate on active array') in text:
12249
+
12250
+ if isinstance(self.selected_object, Zones):
12251
+
12252
+ if self.active_array is None:
12253
+ logging.warning(_('No active array selected'))
12254
+ return
12255
+
12256
+ dlg = wx.SingleChoiceDialog(None, _('With respect to the array values, keep the extruded values which are ?'), _('Interpolate on active array'), ['Above', 'Below', 'All'], style=wx.CHOICEDLG_STYLE)
12257
+ ret = dlg.ShowModal()
12258
+ if ret != wx.ID_OK:
12259
+ dlg.Destroy()
12260
+ return
12261
+ choice = dlg.GetStringSelection().lower()
12262
+ dlg.Destroy()
12263
+
12264
+
12265
+ logging.info(_('Interpolating polygons on active array'))
12266
+ logging.info(_('Please wait, it could take some time...'))
12267
+ for curzone in self.selected_object.myzones:
12268
+ self.active_array.interpolate_on_polygons(curzone, keep = choice)
12269
+ logging.info(_('Interpolation done !'))
12270
+
12271
+
12232
12272
  def OnClose(self, event):
12233
12273
  """ Close the application """
12234
12274
 
@@ -12292,6 +12332,7 @@ class WolfMapViewer(wx.Frame):
12292
12332
  nameitem = self.treelist.GetItemText(myitem).lower()
12293
12333
 
12294
12334
  ctrl = wx.GetKeyState(wx.WXK_CONTROL)
12335
+ shiftdown = wx.GetKeyState(wx.WXK_SHIFT)
12295
12336
 
12296
12337
  # ctrl = event.ControlDown()
12297
12338
 
@@ -12345,6 +12386,8 @@ class WolfMapViewer(wx.Frame):
12345
12386
  else:
12346
12387
  if issubclass(type(curobj), WolfArray):
12347
12388
  curobj.uncheck_plot(not ctrl,ctrl)
12389
+ elif isinstance(curobj, Picc_data):
12390
+ curobj.uncheck_plot(ctrl, shiftdown)
12348
12391
  else:
12349
12392
  curobj.uncheck_plot()
12350
12393
 
@@ -15157,6 +15200,9 @@ class WolfMapViewer(wx.Frame):
15157
15200
  tracks.append(_('Rasterize active zone'))
15158
15201
  tracks.append(_('Rasterize active vector'))
15159
15202
 
15203
+ tracks.append(_('Extrude on active array'))
15204
+ tracks.append(_('Interpolate on active array'))
15205
+
15160
15206
  # Récupération des items du menu contextuel
15161
15207
  menuitems = self.popupmenu.GetMenuItems()
15162
15208
  text = [cur.GetItemLabelText() for cur in menuitems]
@@ -15197,6 +15243,7 @@ class WolfMapViewer(wx.Frame):
15197
15243
  if isinstance(self.selected_object, Zones):
15198
15244
  self.popupmenu.Append(wx.ID_ANY, _('Rasterize active zone'), _('Rasterize active zone'))
15199
15245
  self.popupmenu.Append(wx.ID_ANY, _('Rasterize active vector'), _('Rasterize active vector'))
15246
+ self.popupmenu.Append(wx.ID_ANY, _('Interpolate on active array'), _('Interpolate Z-values on active array'))
15200
15247
 
15201
15248
  if isinstance(self.selected_object, Zones | Bridge | Weir):
15202
15249
  self.popupmenu.Append(wx.ID_ANY, _('Export to Shape file'), _('Export to Shape file'))
@@ -15229,6 +15276,9 @@ class WolfMapViewer(wx.Frame):
15229
15276
  moviemenu.Append(wx.ID_ANY, _('Load flight'), _('Load flight'))
15230
15277
  moviemenu.Append(wx.ID_ANY, _('Save flight'), _('Save flight'))
15231
15278
 
15279
+ if isinstance(self.selected_object, Picc_data):
15280
+ self.popupmenu.Append(wx.ID_ANY, _('Extrude on active array'), _('Extrude building elevation on active array'))
15281
+
15232
15282
  self.treelist.PopupMenu(self.popupmenu)
15233
15283
 
15234
15284
  def zoom_on_whole_walonia(self):