Difference between revisions of "Escript"

From Tomelec
Jump to: navigation, search
 
Line 1: Line 1:
 +
''ecue'' hat für den ''Programmer'' der ''Lightin Application Suite (LAS)'' eine eigene Skriptsprache, das ''e:script'' eingeführt. Damit lassen sich unter anderem Abläufe im ''Programmer'' automatisieren. Der Syntax ist an C angelehnt, als Datentypen stehen ''String'' und ''Integer'' zur Verfügung. Die Dokumentation ist leider etwas verwirrend, weshalb ich hier diverse Informationen dazu zusammenstelle.
 +
 +
''e:script'' ist nur in der kostenpflichtigen ''Elements-'' und ''Enterprise-''Version des ''Programmers'' verfügbar, welche durch einen Dongle freigeschalten werden.
 +
 +
 
== Befehle ==
 
== Befehle ==
 
Ein kleiner Auszug aus dem Befehlssatz. Alles bereits praxisnah getestet :)
 
Ein kleiner Auszug aus dem Befehlssatz. Alles bereits praxisnah getestet :)
Line 9: Line 14:
 
! scope="col" | Bemerkung
 
! scope="col" | Bemerkung
 
|-
 
|-
! scope="row" | proSelectOut()  
+
! scope="row" | proSelectOut();
 
|Wählt alle Kanäle im ''Programmer View'' ab.
 
|Wählt alle Kanäle im ''Programmer View'' ab.
 
|-
 
|-
! scope="row" | proSelectSingle(int FixtureTypeID, int FixtureID)  
+
! scope="row" | proSelectSingle(int FixtureTypeID, int FixtureID);
 
|Wählt ein einzelnes Fixture (Gerät) im ''Programmer View'' an. ''FixtureTypeID'' kann mit '''GetFixtureTypeId(str Name)''' abgefragt werden.
 
|Wählt ein einzelnes Fixture (Gerät) im ''Programmer View'' an. ''FixtureTypeID'' kann mit '''GetFixtureTypeId(str Name)''' abgefragt werden.
 
|-
 
|-
! scope="row" | SetPosition(int Position)  
+
! scope="row" | SetPosition(int Position);
 
|Mit ''Position'' ist hier der Stellwert eines Kanals gemeint, nicht Koordinaten. Achtung: 16-bit Wert! 100% = 65535
 
|Mit ''Position'' ist hier der Stellwert eines Kanals gemeint, nicht Koordinaten. Achtung: 16-bit Wert! 100% = 65535
 
|-
 
|-
! scope="row" | proLoadValue(int Channel)
+
! scope="row" | proLoadValue(int Channel);
 
|Setzt den Kanal ''Channel'' der angewählten Fixtures auf den mit '''SetPosition()''' gesetzten Wert (Position).
 
|Setzt den Kanal ''Channel'' der angewählten Fixtures auf den mit '''SetPosition()''' gesetzten Wert (Position).
 
|-
 
|-

Latest revision as of 09:55, 22 September 2011

ecue hat für den Programmer der Lightin Application Suite (LAS) eine eigene Skriptsprache, das e:script eingeführt. Damit lassen sich unter anderem Abläufe im Programmer automatisieren. Der Syntax ist an C angelehnt, als Datentypen stehen String und Integer zur Verfügung. Die Dokumentation ist leider etwas verwirrend, weshalb ich hier diverse Informationen dazu zusammenstelle.

e:script ist nur in der kostenpflichtigen Elements- und Enterprise-Version des Programmers verfügbar, welche durch einen Dongle freigeschalten werden.


Befehle

Ein kleiner Auszug aus dem Befehlssatz. Alles bereits praxisnah getestet :)

Befehle, die wirklich funktionieren
Funktion Beschreibung Bemerkung
proSelectOut(); Wählt alle Kanäle im Programmer View ab.
proSelectSingle(int FixtureTypeID, int FixtureID); Wählt ein einzelnes Fixture (Gerät) im Programmer View an. FixtureTypeID kann mit GetFixtureTypeId(str Name) abgefragt werden.
SetPosition(int Position); Mit Position ist hier der Stellwert eines Kanals gemeint, nicht Koordinaten. Achtung: 16-bit Wert! 100% = 65535
proLoadValue(int Channel); Setzt den Kanal Channel der angewählten Fixtures auf den mit SetPosition() gesetzten Wert (Position).


Beispiele

  • Alle Fixtures eines Types ("Dskch" = Desk Channel) auswählen und auf 100% setzen
int fix_id, n_fix, i;

fix_id = GetFixtureTypeId("Dskch");
n_fix = GetFixtureTypeCount(fix_id);

proSelectOut();                 //deselect all

for (i = 0; i <= n_fix; i++) {
  proSelectSingle(fix_id,i);	//selects a fixture
  ClearFx();                    //maybe important? 
  SetPosition(65535);           //value of a channel
  proLoadValue(0);              //the channel of a fixture
}