Dies ist eine alte Version des Dokuments!
Die Datenstruktur sorgt dafür, dass die Positionsdaten der Pucks gespeichert und verarbeitet werden können. 1)
Die Klasse Puck implementiert die folgenden Methoden:
Methode | Beschreibung |
---|---|
init() | Konstruktor, initialisiert Attribute |
str() | Methode für bequeme formatierte Ausgabe |
len() | gibt die Länge der History zurück |
setPos(timestamp,pos) | aktualisiert die momentane Puckposition |
getRadius() | gibt den Radius des Pucks zurück |
getWeight() | gibt die Masse des Pucks zurück |
getPos() | gibt die aktuelle Position zurück ((die Position, Geschwindigkeit, usw. werden als Numpy Arrays zurückgegeben, da diese die Vektoroperationen implementieren) |
getPos(timestamp) | gibt die Position zu einem gewählten Zeitpunkt zurück |
getTime(frame) | gibt den Timestamp aus |
getPositionen() | gibt alle Positionen des Pucks zurück |
getVelocityVector() | gibt den Geschwindigkeitsvektor des Pucks zurück |
getVelocity() | gibt den Geschwindigkeitswert des Pucks zurück |
getPulseVector() | gibt den Impulsvektor zurück |
getPulse() | gibt den Impulswert zurück |
Die Frameklasse verwaltet alle Pucks. Damit findet unter anderem die Kommunikation zwischen der Trackingsoftware mit einer Instanz der Frameklasse statt. Die Frameklasse empfängt die Daten von der Trackingsoftware in einer bestimmten Form:
daten = [timestamp, (identifier, [(x1,y1),(x2,y2),(x3,y3),(x4,y4)]), ...]
Erklärung:
Methode | Beschreibung |
---|---|
init() | Konstruktor, initialisiert Attribute |
getitem() | Zugriff auf einzelne Pucks |
update(data) | aktualisiert die Puckpositionen |
addPuck(newPuck) | Hinzufügen von einem Puck zu dem Frame |
save(filename) | speichert alle Positionen in einer Tabellendatei |
allVelocity() | gibt die summierten Geschwindigkeiten aller Pucks zurück |
data_boltzmann() | gibt die Positionsdaten für die Berechnung der Heatmap und der Maxwell-Boltzmann-Verteilung zurück |