wolfhece.pybridges

Author: HECE - University of Liege, Pierre Archambeau Date: 2024

Copyright (c) 2024 University of Liege. All rights reserved.

This script and its content are protected by copyright law. Unauthorized copying or distribution of this file, via any medium, is strictly prohibited.

Module Contents

class wolfhece.pybridges.stored_values_unk[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.pybridges.stored_values_unk

Generic enumeration.

Derive from this class to define new enumerations.

WATERDEPTH = (0,)[source]
QX = (1,)[source]
QY = (2,)[source]
UX = (3,)[source]
UY = (4,)[source]
UNORM = (5,)[source]
FROUDE = (6,)[source]
WATERLEVEL = (7,)[source]
WATERSTAGE = (7,)[source]
TOPOGRAPHY = (8,)[source]
HEAD = ()[source]
DIFFERENCE_Z_UP_DOWN = ()[source]
DIFFERENCE_HEAD_UP_DOWN = ()[source]
class wolfhece.pybridges.stored_values_pos[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.pybridges.stored_values_pos

Generic enumeration.

Derive from this class to define new enumerations.

INDICE_I = (0, 'Indice i')[source]
INDICE_J = (1, 'Indice j')[source]
NUM_BLOCK = (2, 'Block')[source]
class wolfhece.pybridges.stored_values_coords[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.pybridges.stored_values_coords

Generic enumeration.

Derive from this class to define new enumerations.

X = (0, 'CoordX')[source]
Y = (1, 'CoordY')[source]
class wolfhece.pybridges.zones_in_file[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.pybridges.zones_in_file

Generic enumeration.

Derive from this class to define new enumerations.

PARTS = '3 zones'[source]
RIVER = 'entier'[source]
SECTION = 'section'[source]
class wolfhece.pybridges.operators[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.pybridges.operators

Generic enumeration.

Derive from this class to define new enumerations.

MEDIAN = 'median'[source]
MIN = 'min'[source]
MAX = 'max'[source]
PERCENTILE5 = 'p5'[source]
PERCENTILE95 = 'p95'[source]
ALL = 'all'[source]
class wolfhece.pybridges.parts_values[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.pybridges.parts_values

Generic enumeration.

Derive from this class to define new enumerations.

CENTRAL[source]
UPSTREAM[source]
DOWNSTREAM[source]
class wolfhece.pybridges.Bridge(myfile='', ds: float = 5.0, ox: float = 0, oy: float = 0, tx: float = 0, ty: float = 0, parent=None, is2D=True, wx_exists: bool = False)[source]

Bases: wolfhece.PyVertexvectors.Zones

Inheritance diagram of wolfhece.pybridges.Bridge

Bridge class

Representation :

Downstream


——- | | | | down | | | | ——- | | | | cent | | | | ——- | | | | up | | | | ——-


/ Upstream

Enumeration of vertices :

^ ^ ^

3——-2 0——-3 1——-2 | | | | | | | | | | cent | | upst | | down | | | | | | | | | | 0——-1 1——-2 0——-3

^ ^ ^

curvi = 0[source]

Si certaines parties ne sont pas attribuées, il peut s’agir d’une mauvaise appellation. Dans ce cas, on attribue sur base de la position dans la zone

colorize()[source]

Colorisation des polygones pour l’interface graphique

get_distance(x: float, y: float)[source]

Compute the distance in-between x,y and the center of the deck

highlighting(rgb=(255, 0, 0), linewidth=3)[source]

Mise en évidence

withdrawal()[source]

Mise en retrait

compute_distance(poly: shapely.geometry.LineString)[source]

Compute the curvilinear distance along a support polyline

plot()[source]

Plot into GUI

find_values_inside_parts(linked_arrays)[source]
Récupère les valeurs à l’intérieur :
  • des parties du pont (amont, centrale, aval)

  • de la discrétisation rivière en polygones

Retour :
  • dictionnaire dont la clé est le nom (ou l’index) du polygone dans la zone –> parties centrale, amont ou aval

  • chaque entrée est un dictionnaire dont la clé ‘values’ contient un dictionnaire pour chaque matrice du projet

  • chaque élément de ce sous-dictionnaire est un tuple contenant toutes les valeurs utiles

ATTENTION : si linked_arrays est un dictionnaire, alors un niveau supérieur est ajouté sur base des clés de ce dictionnaire, dans ce cas, self.linked est un dict et non une liste

get_diff(which_value=Literal[stored_values_unk.DIFFERENCE_Z_UP_DOWN, stored_values_unk.DIFFERENCE_HEAD_UP_DOWN], operator: operators = operators.MEDIAN, which_group=None)[source]

Compute Head or Elevation differences

_get_heads(which_part: parts_values, which_group=None)[source]

Compute Head

_get_river_heads(which_group=None)[source]

Compute Head

get_values(which_part: parts_values, which_value: stored_values_unk | stored_values_pos, which_group=None) dict[source]

Get values for a specific part

La donnée retournée est un dictionnaire –> dépend du typage de “self.linked” (cf “find_values_inside_parts)” pour plus d’infos)

Soit il n’y a qu’un projet à traiter –> le dictionnaire reprend les différentes valeurs pour chaque matrice/simulation du projet Soit il y a plusiuers projets à traiter –> le dictionnaire contient autant d’entrées que de projet et chaque sous-dictionnaire reprend les différentes valeurs pour chaque matrice/simulation du projet

get_river_values(which_value: stored_values_unk | stored_values_pos, which_group=None) dict[source]

Get values for the river polygons

La donnée retournée est un dictionnaire –> dépend du typage de “self.linked” (cf “find_values_inside_parts)” pour plus d’infos)

Soit il n’y a qu’un projet à traiter –> le dictionnaire contient une entrée pour chaque polygone et les différentes valeurs pour chaque matrice/simulation du projet dans chaque polygone Soit il y a plusiuers projets à traiter –> le dictionnaire contient autant d’entrées que de projet et chaque sous-dictionnaire reprend les différentes valeurs comme ci-dessus

get_values_op(which_part: parts_values, which_value: stored_values_unk | stored_values_pos, which_group=None, operator: operators = operators.MEDIAN) dict[source]
get_river_values_op(which_value: stored_values_unk | stored_values_pos, which_group=None, operator: operators = operators.MEDIAN) dict[source]
plot_unk(figax=None, which_value: stored_values_unk | stored_values_pos = stored_values_unk.WATERLEVEL, which_group=None, operator: operators = operators.MEDIAN, options: dict = None, label=True, show=False)[source]
plot_waterline(figax=None, which_group=None, operator: operators = operators.MEDIAN, show=False)[source]
plot_waterhead(figax=None, which_group=None, operator: operators = operators.MEDIAN, show=False)[source]
plot_deck(ax, width, height, lower_level)[source]
class wolfhece.pybridges.Bridges(directory: str, idx: str = '', plotted: bool = True, mapviewer=None, need_for_wx: bool = False)[source]

Bases: wolfhece.drawing_obj.Element_To_Draw

Inheritance diagram of wolfhece.pybridges.Bridges

Base class of element to add into WolfMapViewer or another GUI

plot(sx=None, sy=None, xmin=None, ymin=None, xmax=None, ymax=None, size=None)[source]

Plot elements inside PyDraw

find_minmax(update=False)[source]

Find Min and Max for graphical/GUI needs

_get_list(site) list[Bridge][source]
get_elts(site) list[Bridge][source]
find_nearest(x: float, y: float, site: str = None) Bridge[source]

Find the nearest bridge

site : (optional) key name of a site

find_inside_poly(poly: wolfhece.PyVertexvectors.vector) list[source]

Find bridges inside polygon/vector

select_inside_contour(contours: wolfhece.PyVertexvectors.Zones)[source]

Sort bridges inside “contour” stored in multiple zones

Fill-in dict “self.sites” with key names based on names of zones

compute_distances(poly: wolfhece.PyVertexvectors.vector, site: str = None)[source]

Compute the curvilinear distance along a support polyline

site : (optional) key name of a site

get_curvis(site: str = None) list[source]

Crée une liste contenant les coordonnées curviligne des ponts

get_centralparts(site: str = None) wolfhece.PyVertexvectors.zone[source]

Crée une nouvelle zone avec tous les tabliers de ponts

get_upstreams(site: str = None) wolfhece.PyVertexvectors.zone[source]

Crée une nouvelle zone avec tous les zones amont de ponts

get_downstreams(site: str = None) wolfhece.PyVertexvectors.zone[source]

Crée une nouvelle zone avec tous les zones aval de ponts

find_values_inside_parts(linked_arrays, site: str = None)[source]

Récupère les valeurs à l’intérieur des parties du pont

Stockage dans chaque ouvrage On retient par contre dans l’objet courant les clés des matrices sur lesquelles on travaille –> keys_values

get_values(which_part: parts_values, which_value: stored_values_unk | stored_values_pos, which_group=None, site: str = None) dict[source]
get_diff(which_value, which_group=None, operator: operators = operators.MEDIAN, site: str = None) dict[source]
get_river_values(which_value: stored_values_unk | stored_values_pos, which_group=None, site: str = None) dict[source]
plot_landmarks(landmarks, s_landmarks, ax, ypos, plot_text=True)[source]
plot_group(which_part: parts_values = None, which_value: stored_values_unk | stored_values_pos = None, which_group=None, operator: operators = operators.MEDIAN, options: dict = None, fig=None, ax=None, ybounds=None, site: str = None, show=True)[source]
plot_part_vs_part_group(which_parts: list = None, which_value: stored_values_unk | stored_values_pos = None, which_group=None, operator: operators = operators.MEDIAN, options: dict = None, fig=None, ax=None, ybounds=None, site: str = None, show=True)[source]
plot_part_group_vs_group(which_part: parts_values = None, which_value: stored_values_unk | stored_values_pos = None, which_groups: list = None, operator: operators = operators.MEDIAN, options: dict = None, fig=None, ax=None, ybounds=None, site: str = None, show=True)[source]
plot_all_groups(which_part: parts_values = None, which_value: stored_values_unk | stored_values_pos = None, operator: operators = operators.MEDIAN, options: dict = None, fig=None, ax=None, ybounds=None, site: str = None, show=True)[source]

Graphique de toutes les valeurs associées aux éléments

plot_vs_all_groups(which_part_source: parts_values = None, which_value: stored_values_unk | stored_values_pos = None, operator: operators = operators.MEDIAN, options: dict = None, fig=None, ax=None, ybounds=None, site: str = None, show=True)[source]

Graphique de toutes les valeurs associées aux éléments

plot_all_vs_groups(which_part: parts_values = None, which_value: stored_values_unk | stored_values_pos = None, which_group_source=None, operator: operators = operators.MEDIAN, options: dict = None, fig=None, ax=None, ybounds=None, site: str = None, show=True)[source]

Graphique de toutes les valeurs associées aux éléments

class wolfhece.pybridges.Weir(myfile='', ds: float = 5, ox: float = 0, oy: float = 0, tx: float = 0, ty: float = 0, parent=None, is2D=True, wx_exists: bool = False)[source]

Bases: Bridge

Inheritance diagram of wolfhece.pybridges.Weir

Bridge class

Representation :

Downstream


——- | | | | down | | | | ——- | | | | cent | | | | ——- | | | | up | | | | ——-


/ Upstream

Enumeration of vertices :

^ ^ ^

3——-2 0——-3 1——-2 | | | | | | | | | | cent | | upst | | down | | | | | | | | | | 0——-1 1——-2 0——-3

^ ^ ^

colorize()[source]

Colorisation des polygones pour l’interface graphique

class wolfhece.pybridges.Weirs(directory: str, idx='', plotted=True, mapviewer=None)[source]

Bases: Bridges

Inheritance diagram of wolfhece.pybridges.Weirs

Base class of element to add into WolfMapViewer or another GUI

_get_list(site) list[Weir][source]
get_elts(site) list[Weir][source]