Communication OSC vers MadMapper
Overview
Pour communiquer avec le logiciel de mapping MadMapper, le script python utilise le protocole OSC et envoie des messages (ou bundle pour messages groupés) composés d'une addresse correspondant à un élément MadMapper + la valeur numérique à lui appliquer.
Example :
element_address = "/fixtures/Group-Fixtures/Fixture-1/luminosity"
value = 0.5
MadMapperOSC.send_message(element_address, value)Fonctions
Le principe est d'envoyer des fonctions qui appliquent des médias de couleurs et d'effets aux surfaces correspondants aux rubans, en temps voulu.
- send_message(address, value): envoie un message avec une valeur 
- send_bundle(messages): envoie un groupe de messages + valeurs 
- send_FX(element_address, FX_name): envoie un media à un élément (surface ou fixture) 
- rgb_hex_TO_rgb_percentage(rgb_hex): convertie une couleur hex en un triplet de pourcentage rgb, car MadMapper interprète que des floats de 0 à 1 
- send_rgb_color(element_address, rgb_hex): envoie une couleur à un élément 
- send_light(element_address, intensity, speed): envoie une intensité de lumière à un élément avec une certaine vitesse d'allumage, avec incrementing_thread() 
- incrementing_thread(element_address_withterm, speed, intensity): permet d'augmenter progressivement la luminosité d'un élément comme thread lancée dans send_light() 
- send_increment_light_to_all(): augmente la luminosité de 0 à 100 de chaque ruban LEDs dans l'ordre 
- send_initial_scenario(): envoie des gradients de mouvements blancs à tous les rubans et du bleu à celui du jour 
- send_airquality_mapping(airquality_data): envoie les données de pollution captés par l'API et transformés en effets, à tous les rubans LEDs 
- send_dynamic_arduino_scenario(refresh_frequency): lorsque l'arduino est actif, allume les rubans LEDs correspondant à la position de l'individu, le refresh_frequency permet de definir à quelle fréquence il update 
Pour plus de détails sur le fonctionnement de chacune des fonctions, voir le code source que j'ai bien commenté.
Pour plus d'informations sur le fonctionnement de MadMapper, cf. page MadMapper.
Configuration
Les réglages suivants sont modifiables (dans l'entête classe MadMapperOSC dans le script)
# Réglages de connection
ip = "127.0.0.1"
port = 8010
# Nombre de rubans Leds à controler
days_output_number = 3Mis à jour
Ce contenu vous a-t-il été utile ?
