All Packages Class Hierarchy This Package Previous Next Index
Class Oszi.GeneratorElement
java.lang.Object
|
+----java.awt.Component
|
+----java.awt.Container
|
+----java.awt.Panel
|
+----Oszi.BildPanel
|
+----Oszi.BauElement
|
+----Oszi.GeneratorElement
- public class GeneratorElement
- extends BauElement
- implements ItemListener, ActionListener, TextListener
Eingabeströme: | 0 |
Ausgabeströme: | 1 |
---|
Dieses Bauelement dient dem Erzeugen verschiedener Signalformen.
Diese von der abstrakten Klasse BauElement
abgeleitete Klasse ist ein reiner Produzent von Daten.
Als Bildschirmrepräsentation enthält diese Klasse
ein Panel, an dem die Werte des Generators eingestellt werden
können. Bei Änderung von Einstellwerten werden alle
registrierten WerteGeaendertListener davon in Kenntnis gesetzt.
Das EventObject enthält als Kennung den String tit
,
der am Konstruktor übergeben wird.
- See Also:
- Konventionen, wertAenderung, addWerteGeaendertListener
-
dreieck
- Konstante für die Signalform "Dreieck" (
/\/\
).
-
glatt
- Konstante für die Signalform "reine Gleichspannung".
-
nadel
- Konstante für die Signalform "Nadelimpuls".
-
rechteck
- Konstante für die Signalform "Rechteck".
-
saegezahn
- Konstante für die Signalform "Sägezahn" (
/|/|
).
-
sinus
- Konstante für die Signalform "Sinus".
-
GeneratorElement(String)
- Konstruktor mit vorgegebenen Standardwerten.
-
GeneratorElement(String, double, double, double, double, int, int)
- Der Konstruktor initialisiert den Datenstrom und die AWT-Komponenten
des Bedienpanels.
-
abgleich()
- dient der Synchronisierung.
-
actionPerformed(ActionEvent)
- Event-Handler für Buttons.
-
getAmplitude()
- holt den Amplitudenwert.
-
getFrequenz()
- holt den Frequenzwert.
-
getGleichAnteil()
- holt den Gleichspannungsoffset.
-
getPhase()
- holt den Phasenwert.
-
getSignalform()
- holt die Signalform.
-
getWerteProPeriode()
- holt die Anzahl der Werte pro Periode.
-
isAktiv()
- testet, ob der Generator aktiv ist.
-
isAktivBedienbar()
- testet, ob die "aktiv"-Checkbox bedienbar ist.
-
itemStateChanged(ItemEvent)
- Event-Handler für Checkboxen.
-
run()
- Die
run
-Methode enthält eine Endlosschleife zur
Erzeugung der Zeit- und Spannungswerte, die auf dem Ausgabekanal
ausgegeben werden.
-
schreibeWerte()
- aktualisiert die Bildschirmanzeige der Werte im Bedienpanel.
-
setAktiv(boolean)
- setzt den Generator aktiv oder inaktiv.
-
setAktivBedienbar(boolean)
- setzt die Bedienbarkeit der "aktiv"-Checkbox.
-
setAmplitude(double)
- setzt den Amplitudenwert.
-
setFrequenz(double)
- setzt den Frequenzwert.
-
setGleichAnteil(double)
- setzt den Gleichspannungsoffset.
-
setPhase(double)
- setzt die Phase.
-
setSignalform(int)
- setzt die Signalform.
-
setWerteProPeriode(int)
- setzt die Anzahl der Werte pro Periode (nur für
sinusförmiges Signal relevant).
-
textValueChanged(TextEvent)
- Event-Handler für Textfelder.
sinus
public final static int sinus
- Konstante für die Signalform "Sinus".
rechteck
public final static int rechteck
- Konstante für die Signalform "Rechteck".
dreieck
public final static int dreieck
- Konstante für die Signalform "Dreieck" (
/\/\
).
saegezahn
public final static int saegezahn
- Konstante für die Signalform "Sägezahn" (
/|/|
).
nadel
public final static int nadel
- Konstante für die Signalform "Nadelimpuls".
glatt
public final static int glatt
- Konstante für die Signalform "reine Gleichspannung".
GeneratorElement
public GeneratorElement(String tit)
- Konstruktor mit vorgegebenen Standardwerten.
Entspricht:
GeneratorElement(tit, 1000.0, 1.0, 0.0, 0.0, 25,
GeneratorElement.sinus)
.
- Parameters:
- tit - String für die Titelzeile des Panels.
- See Also:
- GeneratorElement
GeneratorElement
public GeneratorElement(String tit,
double f,
double a,
double g,
double p,
int w,
int s)
- Der Konstruktor initialisiert den Datenstrom und die AWT-Komponenten
des Bedienpanels.
- Parameters:
- tit - String für die Titelzeile des Panels.
- f - Frequenz in Hertz.
- a - Amplitude in Volt.
- g - Gleichspannungsoffset in Volt.
- p - Phase in rad.
- w - Anzahl der diskreten Werte, die pro Periode berechnet werden
sollen (nur für sinusförmige Spannung relevant).
- s - Signalform.
- See Also:
- setWerteProPeriode, sinus, rechteck, dreieck, saegezahn, nadel, glatt
run
public void run()
- Die
run
-Methode enthält eine Endlosschleife zur
Erzeugung der Zeit- und Spannungswerte, die auf dem Ausgabekanal
ausgegeben werden. Die Aktivierung des Threads erfolgt
mittels myGeneratorElement.getThread().start()
.
- Overrides:
- run in class BauElement
- See Also:
- getThread
abgleich
public void abgleich()
- dient der Synchronisierung.
Das Synchronisierungssignal (Zeit =
Double.NaN
,
Spannung = 0.0
) wird gesendet. Anschließend
beginnt die Berechnung des Signals von vorn.
- See Also:
- addWerteGeaendertListener, werteGeaendert, Konventionen
setFrequenz
public void setFrequenz(double x)
- setzt den Frequenzwert.
- Parameters:
- x - neue Frequenz in Hertz.
- See Also:
- getFrequenz
getFrequenz
public double getFrequenz()
- holt den Frequenzwert.
- Returns:
- aktuelle Frequenz in Hertz.
- See Also:
- setFrequenz
setAmplitude
public void setAmplitude(double x)
- setzt den Amplitudenwert.
- Parameters:
- x - neue Amplitude in Volt.
- See Also:
- getAmplitude
getAmplitude
public double getAmplitude()
- holt den Amplitudenwert.
- Returns:
- aktuelle Amplitude in Volt.
- See Also:
- setAmplitude
setGleichAnteil
public void setGleichAnteil(double x)
- setzt den Gleichspannungsoffset.
- Parameters:
- x - neuer Gleichspannungsoffset in Volt.
- See Also:
- getGleichAnteil
getGleichAnteil
public double getGleichAnteil()
- holt den Gleichspannungsoffset.
- Returns:
- aktueller Gleichspannungsoffset in Volt.
- See Also:
- setGleichAnteil
setPhase
public void setPhase(double x)
- setzt die Phase.
- Parameters:
- x - neue Phase in rad.
- See Also:
- getPhase
getPhase
public double getPhase()
- holt den Phasenwert.
- Returns:
- aktuelle Phase in rad.
- See Also:
- setPhase
setWerteProPeriode
public void setWerteProPeriode(int x)
- setzt die Anzahl der Werte pro Periode (nur für
sinusförmiges Signal relevant). Ein Wert von ca. 25 sollte
für eine ordentliche Darstellung der Sinuskurve ausreichen.
Größere Werte machen die Kurve glatter aber auch die
Darstellung langsamer.
- Parameters:
- x - neuer Wert für die Anzahl der Werte pro Periode.
- See Also:
- getWerteProPeriode
getWerteProPeriode
public int getWerteProPeriode()
- holt die Anzahl der Werte pro Periode.
- Returns:
- aktueller Wert für die Anzahl der Werte pro Periode.
- See Also:
- setWerteProPeriode
setSignalform
public void setSignalform(int x)
- setzt die Signalform.
- Parameters:
- x - neue Signalform.
- See Also:
- getSignalform, sinus, rechteck, dreieck, saegezahn, nadel, glatt
getSignalform
public int getSignalform()
- holt die Signalform.
- Returns:
- aktuelle Signalform.
- See Also:
- setSignalform, sinus, rechteck, dreieck, saegezahn, nadel, glatt
setAktiv
public void setAktiv(boolean x)
- setzt den Generator aktiv oder inaktiv.
Ist der Generator deaktiviert, dann sendet er ständig das
Signal "ungültiger Wert" (Zeit = Double.POSITIVE_INFINITY
,
Spannung = Double.POSITIVE_INFINITY
).
- Parameters:
- x -
true
für "aktivieren",
false
für "deaktivieren".
- See Also:
- isAktiv, setAktivBedienbar, Konventionen
isAktiv
public boolean isAktiv()
- testet, ob der Generator aktiv ist.
- Returns:
-
true
für "aktiv",
false
für "inaktiv".
- See Also:
- setAktiv
setAktivBedienbar
public void setAktivBedienbar(boolean x)
- setzt die Bedienbarkeit der "aktiv"-Checkbox.
Die Bedienbarkeit der "aktiv"-Checkbox im Bedienpanel kann für
den Benutzer abgeschaltet werden, um ihn daran zu hindern, den
Generator zu aktivieren oder zu deaktivieren.
- Parameters:
- x -
true
für "Checkbox bedienbar",
false
für "Checkbox nicht bedienbar".
- See Also:
- isAktivBedienbar, setAktiv
isAktivBedienbar
public boolean isAktivBedienbar()
- testet, ob die "aktiv"-Checkbox bedienbar ist.
- Returns:
-
true
für "Checkbox bedienbar",
false
für "Checkbox nicht bedienbar".
- See Also:
- setAktivBedienbar
schreibeWerte
public void schreibeWerte()
- aktualisiert die Bildschirmanzeige der Werte im Bedienpanel. Bei
Änderungen durch den Benutzer und beim Initialisieren wird diese
Methode automatisch aufgerufen.
Nach Änderung der Werte durch Aufruf der set-Methoden
"von außen" sollte diese Methode explizit aufgerufen werden.
itemStateChanged
public void itemStateChanged(ItemEvent e)
- Event-Handler für Checkboxen.
- Parameters:
- e - zu behandelndes Event.
actionPerformed
public void actionPerformed(ActionEvent e)
- Event-Handler für Buttons.
- Parameters:
- e - zu behandelndes Event.
textValueChanged
public void textValueChanged(TextEvent e)
- Event-Handler für Textfelder.
- Parameters:
- e - zu behandelndes Event.
All Packages Class Hierarchy This Package Previous Next Index