L'editeur de profils CDC-FCT-09

Demande liée: CRUE-113 - Getting issue details... STATUS

Vue « Editeur de profils en travers » (ProfilSection)

 Nouvelles règles sur la conformation des ProfilSections

Les notions de lit nommé et de lit numéroté sont reprises de Crue9, mais les règles ci-dessous viennent s'ajouter aux règles existantes pour imposer un cadre plus strict à la géométrie des tous les profils, quelle que soit leur branche d'appartenance. Ces nouvelles règles seront appliquées systématiquement au chargement d'un scénario Crue9, pour normaliser les profils à la manière Crue10. L'enregistrement c9 et les conversions et les exportations c9c9 et c9c10 permettront d'imposer ces règles dans tous les scénarios persistés :

  • un ProfilSection, quelle que soit sa branche d'appartenance, contient nécessairement la totalité des lits nommés définis dans l'application.
  • la liste, ordonnée de la RD à la RG, des lits nommés, autorisés et obligatoires, est fixée dans le paramétrage site, ou dans le paramétrage interne de l'application (à voir dans les specs techniques). Chaque lit nommé impose à ses lits numérotés des contraintes sur leurs attributs, selon le tableau suivant :

    Lit nommé

    IsLitMineur

    IsLitActif

    Largeur

    Lt_StoD

    False

    False

    ≥0

    Lt_MajD

    False

    True

    ≥0

    Lt_Mineur

    True

    True

    >0

    Lt_MajG

    False

    True

    ≥0

    Lt_StoG

    False

    False

    ≥0

  • chaque lit nommé a au moins un lit numéroté, qui peut être de largeur nulle. On en déduit qu'un ProfilSection a au moins 5 lits numérotés dans la configuration actuelle. Crue9 sera modifié pour accepter des profils à 5 lits dans les BrancheStrickler.
  • chaque lit numéroté appartient à un et un seul lit nommé,
  • dans un lit nommé, les lits numérotés sont contigus. Un lit nommé ne peut donc pas être scindé en parties séparées,
  • le seul lit nommé de largeur obligatoirement non nulle est Lt_Mineur, ce qui sous-entend que dans tout ProfilSection il doit y avoir un lit mineur,
  • le nombre maximum de lits numérotés d'un ProfilSection reste à 10 par convention, mais devient un paramètre site à la place d'une constante de code, puisque le stockage Crue10 des résultats de prétraitement géométrique n'en dépend plus.
  • Pour éviter de nombreux problèmes, un ProfilSection doit contenir au minimum 2 points et Xt est une clé unique strictement croissante. L'écart minimum entre deux Xt est de 2mm, valeur à stocker dans CCM pour être utilisée par le PTG.

 Conventions

  • La convention de visualisation des profils en travers est un paramètre de niveau étude. Sa valeur par défaut, utilisée notamment sur le Rhône, a pour effet que les profils sont vus de l'aval, donc avec la RD à gauche et les abscisses Xt croissantes de la RD à la RG. Ce paramètre peut être inversé pour les études dans lesquelles la convention est une vue de l'amont, avec RD à droite. Dans ce cas, les abscisses Xt sont croissantes de la RG à la RD.
  • Fonctionnalité de rotation des abscisses : dans l'éditeur de ProfilSection, elle permet de faire subir une rotation par symétrie aux abscisses Xt autour d'une abscisse particulière choisie. Cela permet d'utiliser des profils levés dans une convention différente de celle de l'étude.

 Composition de la vue "Editeur de ProfilSection"

  • Cette vue contient trois parties : une partie fixe (en haut, horizontalement), une partie tabulaire (à gauche) et une partie graphique (à droite). Les deux dernières sont réductibles pour laisser plus de (ou toute la) place à l'autre.
  • La partie fixe contient les sélecteurs (liste combinée déroulante) sous-modèle, branche, ProfilSection. Les deux premiers présentent par défaut "Tous" et le sélecteur ProfilSection présente tous les ProfilSection du scénario avec leur abscisse curviligne, triés dans l'ordre alphabétique. Une sélection dans un des deux premiers sélecteurs permet de réduire les listes de niveau inférieur. Par exemple, si on sélectionne le sous-modèle "Sm_Toto" à la place de "Tous", la liste des branches sélectionnables se limite aux branches de Sm_Toto. Si on sélectionne ensuite une branche "Br_B1", on ne voit dans la liste des ProfilSection que ceux qui sont affectés à des sections appartenant à la branche Br_B1. Dans ce dernier cas, les ProfilSection sont triés dans l'ordre amont-aval de la branche.
  • A côté du sélecteur de ProfilSection, deux flèches (précédent, suivant) permettent de passer rapidement au profil précédent ou suivant dans l'ordre de la liste.
  • Les ProfilSections inactifs (non affectés à des sections) sont rangés dans branche=""

 Partie tabulaire

  • La partie tabulaire permet d'éditer toutes les données géométriques du ProfilSection sélectionné.
  • Colonnes : Xt, Z, Etiquette, Frottement. Chaque ligne du tableau représente un point du profil. Les points sont ordonnés dans l'ordre strictement croissant des Xt, en instance unique du couple (Xt, Z). S'il peut y avoir plusieurs lignes avec le même Xt (voire règle des Xt strictement croissants), l'ordre est imposé par l'utilisateur et doit être modifiable.
  • La colonne étiquette peut contenir une des trois combinaisons suivantes mutuellement exclusives, donc soit :
  • "" : c'est un point non particulier
  • Une liste ordonnée de 1 à 3 limites de lits nommés consécutives, parmi [RD, StoD-MajD, MajD-Mineur], ou parmi [Mineur-MajG, MajG-StoG, RG]. MajD-Mineur et Mineur-MajG ne peuvent pas qualifier le même point, parce que le lit mineur ne peut pas avoir une largeur nulle.
  • Une liste de 1 à 3 étiquettes parmi [LimLit, AxeHyd, Thalweg]
  • "LimLit" pointe une limite de lit numéroté qui subdivise un lit nommé,
  • "AxeHyd" pointe l'axe hydraulique, nécessairement interne au lit mineur.
  • "Thalweg" est un point particulier prépositionné par FC, puis modifiable par l'utilisateur, nécessairement interne au lit mineur.
  • La colonne frottement peut contenir un des quatre choix suivants mutuellement exclusifs, donc soit :
  • "" : pas de frottement positionné. Soit c'est un point hors de la zone RD-RG, soit le frottement n'est pas encore positionné mais devra l'être.
  • "======" : sur chaque point correspondant à une limite de lits nommés,
  • "-----------" : sur chaque point correspondant à une limite de lits internes,
  • <NomFrottement> : nom du frottement, centré verticalement, s'appliquant à toutes les cellules fusionnées des points internes du même lit numéroté.