Dům Individuální Vizualizace a grafické ovládání z automatizace eHouse System – Jáva

Grafické vizualizace eHouse domácí automatizace rozšiřuje vývojové prostředí pro systém a vytváří možnost nezávislého vývoje software pro ofeHouse koncových uživatelů systému , přidružené společnosti a podniky, které chtějí přispět individuálně programování v JSE (Java) prostředí . eHouse pro Java (eHouse4Java) je kompatibilní se systémem Android a Windows Mobile knihoven , což vám umožní vytvořit svůj vlastní software pro ovládací panely a tablety .
Knihovna je aplikace šablona a umožňuje:

  • nahrát konfiguraci , jména regulátorů , Výstupy , Vstupy , senzory , atd. .
  • zajištění komunikačního systému regulátor
  • příjem a dekódování regulátoru datového stav
  • Napsat řídící příkazy graficky (s vizualizací objektů), nebo z textové podobě (s pole volitelná)
  • ovládání systému přes WiFi , Internet , SMS , E-mail
  • Grafické vizualizace a řízení – načíst textový soubor grafických objektů spojených s událostmi vykonaný (z eHouse systému) a zařízení stavů
  • Automatické vizualizace pro regulátor (pokoj)

Vizualizace je vytvořena pomocí java knihovny ” houpačka ” s prvky ” JPanel ” , ” JButton ” atd. .
Tyto objekty jsou automaticky ” dvojnásobek – buffered ” , tak, že se eliminuje vliv blikání , , který je velmi nepříjemný pro uživatele .
Uživatel může také ovládat obraz:

  • Přiblížení a oddálení
  • pohyb nahoru , dolů a ze strany na stranu
  • změnit aktuální pohled výběrem ” Možnosti ”
  • návrat do grafického znázornění systému výběrem ” Pohled ”

Příklad systému vizualizace eHouse:
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
Zvětšování a zmenšování byla provedena s využitím škálovatelné vektorové grafiky (SVG) , tak, že se obraz neztrácí kvalitu po změně stupnice:
 Vrátit úpravy

Novinka! ;
regulátory stav se automaticky zobrazí:
To je aktualizována prostřednictvím počítačové sítě nebo internetu (TCP nebo UDP) – on-line (v reálném čase)
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
Výběrem ” Možnosti ” a pokoj může být viděn stavy regulátorů a volbu programů .
Změna stavu příchozí UDP automaticky rewizualizacjÄ ™:  Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
 Inteligentní domácí kontrolní eHouse on-line grafika a vizualizace - java open source
Kromě vizualizace individuálně navržen na základě architektonického návrhu a instalace inteligentního domu je automaticky vytvořena vizualizace nezávisle pro každou správce v systému (zejména pro RoomManagers a EthernetRoomManager – pro jednotlivé místnosti) .
To umožňuje nezávislé ovládací panely a vizualizace pro každou místnost samostatně , bez zdlouhavé vytvořit projekt – založený na vizualizační systém .
Pro CommManager (stavy alarmových čidel , Výstupů)
 Inteligentní domácí grafika ovládání eHouse a vizualizace automatické on-line - java open source
Pro RoomManager a EthernetRoomManager:
 Inteligentní domácí grafika ovládání eHouse a vizualizace automatické on-line - java open source
 Inteligentní domácí grafika ovládání eHouse a vizualizace automatické on-line - java open source
 Inteligentní domácí grafika ovládání eHouse a vizualizace automatické on-line - java open source
Kotle regulátor , obnovení CO (HeatManagera)
 Inteligentní domácí grafika ovládání eHouse a vizualizace automatické on-line - java open source
 Inteligentní domácí grafika ovládání eHouse a vizualizace automatické on-line - java open source
Více informací lze nalézt v článcích věnovaných eHouse4Android programových knihoven (eHouse pro Android – Android Java) , které byly přeloženy do platformy Java SE pro kompatibilitu a snadné vývoje software v různých operačních systémech .
SOURCE CODE
/ *
* Šablony aplikace pro grafické vizualizační systém , smart home eHouse
* Pouze pro registrované uživatele systému eHouse , Spolupracující společnosti All Rights Reserved
*
* Vyžaduje Třídy:
* Ehousecommunication . třída – odesílat události do systému
* EhouseTCP . třída – Inicializace a údržba komunikací přes TCP / IP ovladač , Aktualizované údaje z vstupů a výstupů
* StatusEhouse . třída – ukládání dat a regulátor nastavení , aktualizovány průběžně přes TCP / IP řadiče ehouse1 (485)
* StatusCommManager . třída – uložit aktuální data a nastavení řadiče , aktualizovány průběžně přes TCP / IP řadiče ehouse2 (Ethernet)
* GraphicObject . třída – skladování grafických objektů
* Vizualizace . třída – kreslit grafické objekty (čáry , elipsy , obdélníky) a služby související události
*
* Použití šablony navrhl grafickou vizualizaci eHouse systému
* Pouze registrovaní uživatelé , Prodejci , Družstva Copyright ISYS . En Všechna práva vyhrazena
*
* Povinné třídy:
* Ehousecommunication . třída – odesílání událostí do systému
* EhouseTCP . třída – Inicializace a údržba TCP / IP komunikace s regulátory , aktualizace aktuální stav regulátorů
* StatusEhouse . třída – Regulátory nastavení a ukládání dat , aktualizace dat (TCP / IP) pro ehouse1 regulátory (485)
* StatusCommManager . třída – Regulátory nastavení a ukládání dat , aktualizaci dat (TCP / IP) pro ehouse2 regulátorů (Ethernet)
* GraphicObject . třída – grafické ukládání dat objekty
* Vizualizace . třída – nakreslené grafické objekty (čáry , Elips , obdélníky) a manipulace akce související s nimi
* /
ehouse4java balení ;
import java . awt . * ;
import java . awt . událost . * ;
import javax . houpačka . * ;
import javax . houpačka . událost . Changeevent ;
import javax . houpačka . událost . ChangeListener ;
Ehouse4java public class rozšiřuje JFrame implements ActionListener , ChangeListener {
/ **
* Třída zodpovědná za inicializaci stavu systému , a vytvořit
* Hlavní okno aplikace . Implementuje rozhraní, které podporují událost
* Souvisí s tlačítky .
*
* Třída Odpovědnost za inicializaci stavu tříd a vytváření
* Hlavní okno aplikace . , Kterou se provádí rozhraní podporují události
* Souvisí s tlačítky .
* /
/ **
* Vizualizace objekt obsahující v současné době Zobrazeno názor
* /
veřejné vizualizace Vizualizace ;
/ / Veřejné vizualizace Možnosti ;
/ / Veřejné vizualizace TextEvents ;
/ **
* Pallete z tlačítek podporující přiblížení , řazení a měnící se
* Zobrazeno pohled
* /
JButton ZoomPlusButton ;
JButton ZoomMinusButton ;
JButton LeftShiftButton ;
JButton RightShiftButton ;
JButton UpButton ;
JButton DownButton ;
JButton ExitB = null ;
JButton Možnosti ;
JButton Zobrazit ;
JButton Zpět ;
JButton [] = new JButton ViewsB [MAX_VIEWS_COUNT] ;
/ **
* Panel se všemi tlačítky
* /
JPanel ZoomPanel ;
/ **
* Panel Zobrazeno současné době obsahuje vizualizaci
* /
JPanel viewpanel ;
/ **
* Panel obsahující skupinu tlačítek slouží k přístupu k regulátory státy ,
* Systém řády atd. . .
* /
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 ;
double prevScaleX ;
double prevScaleY ;
public final double zoomfactor = 0 . 3 ;
public static String previousoptionsview = ” ” ;
/ **
* Vytvoří nový formulář Ehouse4java . Zahájí stavu tříd a grafických
* Komponenty s hlavním okně .
* /
public Ehouse4java () {
super ( ” EHouse ” ) ;
OnCreate () ;
setDefaultCloseOperation (JFrame . EXIT_ON_CLOSE) ;
/ **
* Spustí všechny grafické prvky
* /
addComponentToPane (getContentPane ()) ;

setSize (400 , 400) ;
setLocation (200 , 0) ;
setMinimumSize (nový rozměr (200 , 200)) ;
setVisible (true) ;
prevCenterX = (int) Vizualizace . getBounds () . getCenterX () ;
prevCenterY = (int) Vizualizace . getBounds () . getCenterY () ;
}
/ **
* Spustí všechny komponenty suché jako grafické panely , Tlačítka , posuvníky , atd. . .
*
* @ Param panel
* /
public void addComponentToPane (Container panel) {

optionfirsttime = true ;

ExitB = new JButton ( ” Odchod ” ) ;
ExitB . setActionCommand ( ” Odchod ” ) ;
ExitB . addActionListener (to) ;
. . .
indexView int = 0 ;
ZoomPanel = new JPanel (nový FlowLayout ()) ;
viewpanel . add (ZoomPanel , BorderLayout . PAGE_END) ;
ZoomPlusButton = new JButton ( ” + ” ) ;
ZoomPlusButton . setActionCommand ( ” ZoomPlus ” ) ;
ZoomPlusButton . addActionListener (to) ;
ZoomPanel . přidat (ZoomPlusButton) ;
ZoomMinusButton = new JButton ( ” – ” ) ;
ZoomMinusButton . setActionCommand ( ” ZoomMinus ” ) ;
ZoomMinusButton . addActionListener (to) ;
ZoomPanel . přidat (ZoomMinusButton) ;
. . .
}
/ **
* Iniciuje a StatusEhouse StatusCommManager třídy podle zatížení správců
* Status
* /
public void OnCreate () { . . . }
/ **
* @ Param args argumenty příkazového řádku
* /
public static void main (String args []) {
/ *
* Vytvoření a zobrazení formuláře
* /
Jáva . awt . EventQueue . invokeLater (nový Runnable () {
public void run () {
Ehouse4java nový () . setVisible (true) ;
}
}) ;
}
/ **
* Podporuje událostí vyvolat kliknutím na tlačítko
*
* @ Param e
* /
@ Override
public void actionPerformed (ActionEvent e) {
switch (e . getActionCommand ()) {
případ ” ZoomPlus ” :
prevOffsetX = ehousecommunication . OffsetX ;
prevOffsetY = ehousecommunication . Kompenzací ;
ehousecommunication . ScaleX * = (1 + zoomfactor) ; / / * 100/zoomleve ;
ehousecommunication . ScaleY * = (1 + zoomfactor) ; / / * 100/zoomleve ;
/ / Centrování zobrazení po rescalling
ehousecommunication . OffsetX + = (int) ((Vizualizace . getBounds () . getCenterX () + prevOffsetX) * zoomfactor) ;
ehousecommunication . Posuny + = (int) ((Vizualizace . getBounds () . getCenterY () + prevOffsetY) * zoomfactor) + Ycompensation / (1 / (2 * zoomfactor)) ;
EhouseTCP . ReadViewFile (ehousecommunication . currentview) ; / / Výpočet zoom
Vizualizace . překreslit () ;
návrat ;
. . .
}
}
}