Haus freistehend Visualisierung und grafische Steuerung von eHouse System Automation – Java

Grafische Visualisierung von eHouse Home Automation erweitert die Entwicklungsumgebung für das System und schafft die Möglichkeit eines unabhängigen Software-Entwicklung für Endanwender ofeHouse System , assoziierte Unternehmen und Unternehmen, die sich einzeln tragen Programmierung in JSE (Java)-Umgebung . eHouse für Java (eHouse4Java) ist kompatibel mit Android und Windows Mobile-Bibliotheken , so dass Sie Ihre eigene Software für Schalttafeln und Tabletten erstellen .
Die Bibliothek ist das Anwendungs-Template und ermöglicht:

  • Konfiguration laden , die Namen der Steuerungen , Ausgänge , Eingänge , Sensoren , etc .
  • Sicherstellung der Kommunikation Systemsteuereinrichtung
  • Empfangen und Dekodieren der Daten-Controller-Status
  • Senden Steuerbefehle grafisch (mit der Visualisierung von Objekten) oder Textform (mit auswählbaren)
  • Steuerung über WiFi , Internet , SMS , eMail
  • Grafische Visualisierung und Steuerung – Laden der Textdatei von graphischen Objekten mit den Ereignissen auszuführen ist (von eHouse System) und Ausrüstung Zustände assoziiert
  • Automatische Visualisierung für die Steuerung (Zimmer)

Visualisierung erstellt mit Hilfe von Java-Bibliothek ” schwingen ” mit Elementen ein ” JPanel ” , ” JButton ” etc .
Diese Objekte werden automatisch ” verdoppeln – gepufferte ” , so dass die Wirkung von Flimmern eliminiert , was sehr störend für den Benutzer .
Der Benutzer kann auch die Bild:

  • Vergrößern und Verkleinern
  • aufrücken , nach unten und von Seite zu Seite
  • Ändern der aktuellen Ansicht, indem Sie die ” Optionen ”
  • Rückkehr zum grafischen Visualisierung des Systems durch Auswählen des ” Sehen ”

Beispiel der Visualisierung eHouse System:
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
Vergrößern und Verkleinern wurde mit dem Einsatz von Scalable Vector Graphics (SVG) durchgeführt , so dass das Bild nicht verliert seine Qualität nach dem Wechsel der Skala:
 Rückgängig

Neu! ;
Controller-Status werden automatisch angezeigt:
Er wird über ein Computernetzwerk oder das Internet aktualisiert (TCP oder UDP) – online (in Echtzeit)
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
Durch die Auswahl der ” Optionen ” und die Zimmer können Staaten Controller gesehen werden, und wählen Sie Programme .
Ändern des Status von eingehenden UDP wird automatisch rewizualizacjÄ ™:  Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
 Intelligente Haussteuerung eHouse Online-Grafik und Visualisierung - Open Source Java
Zusätzlich zur Visualisierung von individuell gestalteten basierend auf den architektonischen Entwurf und Installation von Smart-Home wird automatisch die Visualisierung unabhängig für jeden Controller im System (insbesondere für RoomManagers und EthernetRoomManager erstellt – für einzelne Räume) .
Dies ermöglicht die unabhängige Bedienfelder und Visualisierung für jeden Raum individuell , ohne langweilig zu Projekt erstellen – basierten Visualisierungssystem .
Für CommManager (Zustände Alarmsensoren , Ausgänge)
 Intelligente Haussteuerung eHouse Grafik und Visualisierung automatische Online - Open Source Java
Für RoomManager und EthernetRoomManager:
 Intelligente Haussteuerung eHouse Grafik und Visualisierung automatische Online - Open Source Java
 Intelligente Haussteuerung eHouse Grafik und Visualisierung automatische Online - Open Source Java
 Intelligente Haussteuerung eHouse Grafik und Visualisierung automatische Online - Open Source Java
Der Kessel-Controller , Rückgewinnung von CO (HeatManagera)
 Intelligente Haussteuerung eHouse Grafik und Visualisierung automatische Online - Open Source Java
 Intelligente Haussteuerung eHouse Grafik und Visualisierung automatische Online - Open Source Java
Weitere Informationen finden Sie in den Artikeln zu Programmier-Bibliotheken eHouse4Android (eHouse für Android finden – Android Java) , welches sind in Java SE wurde für die Kompatibilität und Benutzerfreundlichkeit der Software-Entwicklung übersetzt auf unterschiedlichen Betriebssystemen .
Der Quellcode
/ *
* Template-Anwendungen für grafische Visualisierung , smart home eHouse
* Nur für registrierte Nutzer des Systems eHouse , Kooperierende Unternehmen Alle Rechte vorbehalten
*
* Erfordert Klassen:
* Ehousecommunication . Klasse – Ereignisse an das System
* EhouseTCP . Klasse – Initialisierung und Wartung der Kommunikation über TCP / IP-Controller , Aktualisierten Daten von den System-und Ausgänge
* StatusEhouse . Klasse – Datenspeicherung und Controller-Einstellungen , aktualisiert laufend über TCP / IP-Controller ehouse1 (485)
* StatusCommManager . Klasse – speichern aktuellen Daten und Einstellungen Controller , aktualisiert laufend über TCP / IP-Controller ehouse2 (Ethernet)
* GraphicObject . Klasse – Speicherung von grafischen Objekten
* Visualisierung . Klasse – ziehen grafische Objekte (Linien , Ellipsen , Rechtecke) und Service Veranstaltungen
*
* Application Template entwickelt eine grafische Visualisierung eHouse System
* Nur für registrierte Nutzer , Vendors , GENOSSENSCHAFTEN Urheberrecht ISYS . En All Rights Reserved
*
* Pflichtfeld Klassen:
* Ehousecommunication . Klasse – Senden von Ereignissen an das System
* EhouseTCP . Klasse – Initialisierung und Wartung TCP / IP-Kommunikation mit Controller , Aktualisieren aktuellen Status der Steuerungen
* StatusEhouse . Klasse – Controller-Einstellungen und Datenspeicherung , Aktualisieren von Daten (TCP / IP) zum ehouse1 Controller (485)
* StatusCommManager . Klasse – Controller-Einstellungen und Datenspeicherung , Aktualisieren von Daten (TCP / IP) zum ehouse2 Steuerungen (Ethernet)
* GraphicObject . Klasse – Graphikdaten Speicherobjekte
* Visualisierung . Klasse – grafik Objekte (Linien , Ellipsen , Rechtecke) und Handhabung Ereignisse im Zusammenhang mit ihnen
* /
ehouse4java Paket ;
import java . awt . * ;
import java . awt . Veranstaltung . * ;
Import javax . schwingen . * ;
Import javax . schwingen . Veranstaltung . ChangeEvent ;
Import javax . schwingen . Veranstaltung . ChangeListener ;
Ehouse4java public class extends JFrame implements ActionListener , ChangeListener {
/ **
* Klasse verantwortlich für die Initialisierung des Systemstatus , und erstellen
* Das Hauptfenster . Implementiert Schnittstellen, die Veranstaltung zu unterstützen
* Mit Knöpfen Assoziierte .
*
* Klasse Verantwortlich für die Initialisierung der Status der Klassen und die Schaffung
* Das Hauptfenster . Das Implementiert Schnittstellen unterstützen Veranstaltungen
* Zu den Tasten Related .
* /
/ **
* Visualisierung Objekt mit aktuell angezeigten Ansicht
* /
öffentliche Visualisierung Visualisierung ;
/ / Public Visualisierung Optionen ;
/ / Public Visualisierung TextEvents ;
/ **
* Pallete der Tasten unterstützt Zoomen , Verschieben und Verändern
* Angezeigt Blick
* /
JButton ZoomPlusButton ;
JButton ZoomMinusButton ;
JButton LeftShiftButton ;
JButton RightShiftButton ;
JButton UpButton ;
JButton DownButton ;
JButton ExitB = null ;
JButton Optionen ;
JButton anzeigen ;
JButton Zurück ;
JButton [] = new JButton ViewsB [MAX_VIEWS_COUNT] ;
/ **
* Panel mit allen Tasten
* /
JPanel ZoomPanel ;
/ **
* Display angezeigt derzeit mit Visualisierung
* /
JPanel ViewPanel ;
/ **
* Das Panel enthält eine Gruppe von Schaltflächen verwendet werden, um Controller Staaten zugreifen ,
* System Zeitpläne etc . .
* /
JPanel optionspanel ;
/ **
* Oprional scrollpanes
* /
JScrollPane jsp1 ;
JScrollPane jsp2 ;
public static int buttonscounter ;
public int centerX ;
public int CenterY ;
public int prevCenterX ;
public int prevCenterY ;
public int Ycompensation ;
prevOffsetX int = 0 , prevOffsetY = 0 ;
Doppel prevScaleX ;
Doppel prevScaleY ;
public final Doppel zoomfactor = 0 . 3 ;
public static String previousoptionsview = ” ” ;
/ **
* Erstellt eine neue Form Ehouse4java . Initiiert den Status von Klassen und Grafik
* Bestandteile mit Hauptfenster .
* /
öffentlichen Ehouse4java () {
super ( ” EHouse ” ) ;
OnCreate () ;
setDefaultCloseOperation (JFrame . EXIT_ON_CLOSE) ;
/ **
* Leitet alle grafischen Komponenten
* /
addComponentToPane (getContentPane ()) ;

setSize (400 , 400) ;
setLocation (200 , 0) ;
setMinimumSize (new Dimension (200 , 200)) ;
setVisible (true) ;
prevCenterX = (int) Visualisierung . getBounds () . getCenterX () ;
prevCenterY = (int) Visualisierung . getBounds () . getCenterY () ;
}
/ **
* Leitet alle Komponenten trocken wie Grafik-Panels , Schaltflächen , Bildlaufleisten , etc . .
*
* @ Param Bereich
* /
public void addComponentToPane (Container Fenster) {

optionfirsttime = true ;

ExitB = new JButton ( ” Verlassen ” ) ;
ExitB . setActionCommand ( ” Verlassen ” ) ;
ExitB . addActionListener (this) ;
. . .
indexView int = 0 ;
ZoomPanel = new JPanel (new FlowLayout ()) ;
ViewPanel . add (ZoomPanel , BorderLayout . PAGE_END) ;
ZoomPlusButton = new JButton ( ” + ” ) ;
ZoomPlusButton . setActionCommand ( ” ZoomPlus ” ) ;
ZoomPlusButton . addActionListener (this) ;
ZoomPanel . add (ZoomPlusButton) ;
ZoomMinusButton = new JButton ( ” – ” ) ;
ZoomMinusButton . setActionCommand ( ” ZoomMinus ” ) ;
ZoomMinusButton . addActionListener (this) ;
ZoomPanel . add (ZoomMinusButton) ;
. . .
}
/ **
* Eingeweihten und StatusEhouse StatusCommManager Klassen durch Laden-Controller
* Status
* /
public void OnCreate () { . . . }
/ **
* @ Param args die Kommandozeilen-Argumente
* /
public static void main (String args []) {
/ *
* Erstellen und das Formular anzuzeigen
* /
Java . awt . EventQueue . invokeLater (new Runnable () {
public void run () {
Ehouse4java new () . setVisible (true) ;
}
}) ;
}
/ **
* Unterstützt Ereignisse, indem Sie auf die Schaltfläche aufgerufen
*
* @ Param e
* /
@ Override
public void actionPerformed (ActionEvent e) {
Schalter (e . getActionCommand ()) {
Fall ” ZoomPlus ” :
prevOffsetX = ehousecommunication . OffsetX ;
prevOffsetY = ehousecommunication . Offsets ;
ehousecommunication . ScaleX * = (1 + zoomfactor) ; / / * 100/zoomleve ;
ehousecommunication . ScaleY * = (1 + zoomfactor) ; / / * 100/zoomleve ;
/ / Zentrieren der Ansicht nach rescalling
ehousecommunication . OffsetX + = (int) ((Visualisierung . getBounds () . getCenterX () + prevOffsetX) * Zoomfaktor) ;
ehousecommunication . Offsets + = (int) ((Visualisierung . getBounds () . getCenterY () + prevOffsetY) * zoomfactor) + Ycompensation / (1 / (2 * zoomfactor)) ;
EhouseTCP . ReadViewFile (ehousecommunication . CurrentView) ; / / Berechne zoom
Visualisierung . repaint () ;
Rückkehr ;
. . .
}
}
}