La documentation suivante a pour but de générer un visuel permettant d’apprécier l’indice universel du climat thermique (ou UTCI) moyen quotidiennement sur l’année représentée par un fichier météo.

Dans ce cadre, nous utiliserons uniquement des outils de visualisations relatifs à Ladybug, permettant d’afficher les données d’un fichier météo.

Le résultat de ce script Grasshopper affiche les valeurs moyennes quotidiennes sous la forme d’une heatmap — une représentation graphique de données où les valeurs individuelles contenues dans une matrice sont représentées par des couleurs.

Exemple de visualisation de l'UTCI quotidien moyen sous la forme d'une heatmap

Exemple de visualisation de l'UTCI quotidien moyen sous la forme d'une heatmap

1. Prérequis

Les logiciels suivants sont requis pour l’utilisation de ce script :

2. Fichiers modèles

Pour faciliter le suivi de la méthode décrite, un fichier Rhino et son script Grasshopper correspondant sont disponibles :

Télécharger le fichier Rhino d’exemple

Télécharger le fichier Grasshopper d’exemple

Le fichier Grasshopper d'exemple contient les dépendances suivantes, il convient de les installer :

  • Ladybug Tools 1.8.0 (Guide d’installation) ;
  • Bifocals 0.5.0.0 (optionnel, pour l’affichage des noms de composants) ;
  • Moonlight 1.0.0.0 (optionnel, pour l’affichage en mode sombre).

Le seul élément contenu dans le fichier Rhino est un mesh servant de grille pour l'affichage des données.

3. Décomposition du script

Le script est divisé en groupes (visibles sous la forme de blobs de couleur et portant chacun un titre). La suite de ce guide indique l’usage de chacun de ces groupe et sa fonction dans la définition.

Définition Grasshopper de la visualisation de l'UTCI moyen quotidien

Définition Grasshopper de la visualisation de l'UTCI moyen quotidien (fichier d'exemple)

3.1. Fichier météo

L’adresse du fichier météo est à insérer dans le Panel rouge de ce groupe.

Ce guide indique la marche à suivre pour la recherche et l’insertion d’un fichier météo dans un script Ladybug.

3.2. Calcul et période d’analyse

Le composant LB UTCI Comfort calcule l’UTCI à partir de la température de l’air, de l’humidité relative et de la vitesse du vent. Lancer ce composant en basculant le FalseStart sur True.

Ensuite, les résultats du calcul sont formatés pour être affichés sous la forme d’une heatmap, avec la transformation de donnée horaire en donnée quotidienne moyenne (LB Time Interval Operation), puis un composant LB Deconstruct Data pour extraire uniquement les valeurs résultantes sous la forme d’une liste.

3.3. Mise en forme

Ces composants sont destinés à mettre en forme les données sur le mesh présent dans le fichier, d’y appliquer une échelle et des couleurs spécifiques. Cette partie peut être adaptée selon votre charte graphique.

3.4. Bake

Afin d’exporter le résultat de la visualisation vers Illustrator et de finaliser sa mise en page, il est nécessaire de “bake” les objets, pour ensuite les exporter au format .ai.

Dans Grasshopper, un "bake" désigne le processus consistant à convertir des géométries ou des objets générés dynamiquement dans Grasshopper en objets permanents dans Rhino.

Un composant Button est relié au composant LB Mesh to Hatch. En cliquant sur le bouton, la heatmap est créée sous la forme de hatches dans Rhino (dans le calque nommé par le Panel, ici “Default”).

Pour également exporter les textes, sélectionner le composant Text Tag 3D, cliquer-droit n’importe où sur le canevas, et choisir Bake.

Les hatches et les textes peuvent être sélectionnés, puis exportés vers le format .ai, ou n’importe quel autre format vectoriel permettant de gérer les polices, mises en page, etc.

3.5. Statistiques et analyse

Ce groupe en gris permet d’apprécier la distribution des heures confortables, trop froides, ou trop chaudes. Un composant GhPython Script a été réalisé sur mesure pour calculer ces résultats, et est ici rendu disponible pour faciliter la lecture de cette distribution en heures ou en jours (selon les valeurs données en entrée).

Le composant GhPython Script en usage dans le cas du comptage des jours trop chauds, trop froids, ou confortables

Le composant GhPython Script en usage dans le cas du comptage des jours trop chauds, trop froids, ou confortables

Ce composant contient le code suivant :

# GhPython Script for Calculating Percentages of Categories
 
# Initialize counts
tooCold = 0
tooHot = 0
comfortable = 0
 
# Total number of values
totalValues = len(values)
 
# Check if the list is empty to avoid division by zero
if totalValues == 0:
    tooCold = 0
    tooHot = 0
    comfortable = 0
else:
    # Iterate through the list and count based on conditions
    for value in values:
        if value == -1:
            tooCold += 1
        elif value == 1:
            tooHot += 1
        else:
            comfortable += 1