Skip to content

methodpark/creative-coding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Creative Coding Session

Beispiel Repository

Im folgenden Beispiel Repository finden sich zu jedem Gerät ausführliche Codebeispiele, die als Referenz (und natürlich zum herum spielen) heran gezogen werden können. https://github.com/methodpark/creative-coding

Wenn ihr Lust habt könnt ihr mit eurem Projekt einen Pull Request stellen, dann haben wir im Anschluss eine kleine Sammlung spannender Beiträge die wir im Anschluss vorstellen können!

Systemvoraussetzungen

  • node.js (z.B. version 10, download unter https://nodejs.org/en/download/), ab node v12 gibt es momentan scheinbar Probleme
  • eine Buildumgebung (z.B. MSVS, abhängig von eurem Betriebssystem)
  • Python 2.7

Eine Detailanleitung zur Installation findet ihr unter: https://github.com/nodejs/node-gyp

Natürlich könnt ihr auch jede andere Programmierumgebung nutzen! Dieses Cheatsheet bezieht sich allerdings nur auf Node.js / JavaScript.

Installation

git clone [email protected]:methodpark/creative-coding.git

cd creative-coding

npm install

Launchpad

Initialisierung

const lunchpad = require('lunchpad');
const Color = lunchpad.Color;

lunchpad.initialize().then(launchpad => {
  // your code here
});

Get + Set

getSquare(x, y): fragt die Farbe eines Feldes ab
setSqare(x, y, color): setzt die Farbe eiens Feldes
getFunctionX(x): fragt die Farbe eines horizontalen Funktionsbuttons ab
setFunctionX(x, y, color): setzt die Farbe eines horizontalen Funktionsbuttons
getFunctionY(x, y): fragt die Farbe eines vertikalen Funktionsbuttons ab
setFunctionY(x, y, color): setzt die Farbe eines horizontalen Funktionsbuttons
clearSquares(): setzt alle Felder zurück
clearAll(): setzt alle Buttons zurück

Events

launchpad.on('input', (x, y) => ...)
Button Event mit den Koordinaten des Buttons

launchpad.on('functionX', x => ...)
Button Event für die horizontalen Funktions Buttons

launchpad.on('functionY', y => ...)
Button Event für die vertikalen Funktions Buttons

Farben

Launchpad unterstützt drei Farben: Color.RED, Color.Amber und Color.Green

Für jeder Farbe existieren drei Helligkeitsstufen:

const myRed = Color.RED;
const lighterRed = myRed.lighter();

DMX

const Fixture = require('./lib/Fixture');
const getUniverse = require('./lib/getUniverse');

// erzeugt ein universe für das usbPro interface
getUniverse('usbPro').then(universe => {
  const fixture = new Fixture(1, universe);

  fixture.brightness(1);
  fixture.color('fuchsia');
});

Alternativ kann auch der Debug Treiber verwendet werden:

getUniverse('debug').then(universe => {
  // ...
});

Fixture

Die Fixture Klasse abstrahiert das Setzen von Farbwerten und der Helligkeit eines Lichtelementes.

const fixture = new Fixture(basePort, universe);

fixture.brightness(1);    // ein Wert zwischen 0 und 1
fixture.color('fuchsia'); // ein benannter Farbwert oder Hexvalue (#f00)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •