Σπίτι Προσωπικά Οπτικοποίηση και γραφικών έλεγχο από την αυτοματοποίηση του συστήματος eHouse – Ιάβα

Γραφική απεικόνιση της Αρχική eHouse Αυτοματισμού επεκτείνει το περιβάλλον ανάπτυξης για το σύστημα και δημιουργεί τη δυνατότητα μιας ανεξάρτητης ανάπτυξης λογισμικού για τους χρήστες του συστήματος ofeHouse τέλος , συνδεδεμένες εταιρείες και οι επιχειρήσεις που επιθυμούν να συνεισφέρουν μεμονωμένα προγραμματισμού JSE (Java) περιβάλλον . eHouse για Java (eHouse4Java) είναι συμβατή με το Android και Windows Mobile βιβλιοθήκες , που σας επιτρέπει να δημιουργήσετε το δικό σας λογισμικό για πίνακες ελέγχου και δισκία .
Η βιβλιοθήκη είναι το πρότυπο εφαρμογής και επιτρέπει:

  • φορτίο διαμόρφωση , τα ονόματα των ελεγκτών , Έξοδοι , Είσοδοι , αισθητήρες , κλπ. .
  • την εξασφάλιση της επικοινωνίας του ελεγκτή του συστήματος
  • τη λήψη και την αποκωδικοποίηση της κατάστασης επεξεργασίας δεδομένων
  • αποστολή εντολών ελέγχου γραφικά (με την οπτικοποίηση των αντικειμένων) ή από τη μορφή κειμένου (με δυνατότητα επιλογής πεδίου)
  • σύστημα ελέγχου μέσω WiFi , Internet , SMS , eMail
  • Γραφική απεικόνιση και έλεγχος – φορτώσει το αρχείο κειμένου των γραφικών αντικειμένων που σχετίζονται με τα γεγονότα που πρόκειται να εκτελεστεί (του συστήματος eHouse) και καταστάσεις εξοπλισμός
  • Αυτόματη απεικόνιση για τον ελεγκτή (δωμάτιο)

Οπτικοποίηση δημιουργείται χρησιμοποιώντας java βιβλιοθήκη ” κούνια ” με στοιχεία α ” JPanel ” , ” JButton ” κλπ. .
Αυτά τα αντικείμενα είναι αυτόματα ” διπλασιαστεί – ρυθμιστικό ” , έτσι ώστε η επίδραση του τρεμοπαίγματος αποβάλλεται , που είναι πολύ ενοχλητικό για τον χρήστη .
Ο χρήστης μπορεί να ελέγξει επίσης την εικόνα:

  • ζουμ μέσα και έξω
  • ανεβάσουμε , κάτω και από πλευρά σε πλευρά
  • αλλάξετε την τρέχουσα προβολή, επιλέγοντας το ” Επιλογές ”
  • επιστροφή στην γραφική απεικόνιση του συστήματος επιλέγοντας το ” Άποψη ”

Παράδειγμα του συστήματος eHouse οπτικοποίηση:
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
Ζουμ μέσα και έξω πραγματοποιήθηκε με τη χρήση του Scalable Vector Graphics (SVG) , έτσι ώστε η εικόνα δεν χάνει την ποιότητά του μετά την αλλαγή της κλίμακας:
 Αναίρεση αλλαγών

Νέο! ;
ελεγκτές κατάσταση εμφανίζονται αυτόματα:
Ενημερώνεται μέσω ενός δικτύου υπολογιστών ή του Διαδικτύου (TCP ή UDP) – σε απευθείας σύνδεση (σε πραγματικό χρόνο)
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
Με την επιλογή του ” Επιλογές ” και το δωμάτιο μπορεί να δει τα κράτη ελεγκτές και να επιλέξετε τα προγράμματα .
Η αλλαγή του καθεστώτος των εισερχόμενων UDP θα αυτόματα rewizualizacjÄ ™:  Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι έλεγχος σε απευθείας σύνδεση γραφικών και οπτικοποίησης - ανοικτού κώδικα java
Εκτός από την απεικόνιση του ξεχωριστά σχεδιασμένα με βάση τον αρχιτεκτονικό σχεδιασμό και την εγκατάσταση των έξυπνων σπίτι δημιουργείται αυτόματα η απεικόνιση ανεξάρτητα για κάθε ελεγκτή του συστήματος (ιδίως για RoomManagers και EthernetRoomManager – για μεμονωμένα δωμάτια) .
Αυτό δίνει τη δυνατότητα για ανεξάρτητες επιτροπές ελέγχου και οπτικοποίησης για κάθε δωμάτιο χωριστά , χωρίς κουραστικό να δημιουργήσει έργο – με βάση το σύστημα απεικόνισης .
Για CommManager (πολιτείες των αισθητήρων συναγερμού , Ήχου παράγει)
 Ευφυής eHouse σπίτι γραφικών ελέγχου και οπτικοποίησης αυτόματη σύνδεση - ανοικτού κώδικα java
Για RoomManager και EthernetRoomManager:
 Ευφυής eHouse σπίτι γραφικών ελέγχου και οπτικοποίησης αυτόματη σύνδεση - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι γραφικών ελέγχου και οπτικοποίησης αυτόματη σύνδεση - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι γραφικών ελέγχου και οπτικοποίησης αυτόματη σύνδεση - ανοικτού κώδικα java
Ο ελεγκτής λέβητα , ανάκτηση του CO (HeatManagera)
 Ευφυής eHouse σπίτι γραφικών ελέγχου και οπτικοποίησης αυτόματη σύνδεση - ανοικτού κώδικα java
 Ευφυής eHouse σπίτι γραφικών ελέγχου και οπτικοποίησης αυτόματη σύνδεση - ανοικτού κώδικα java
Περισσότερες πληροφορίες μπορείτε να βρείτε στα άρθρα που ασχολούνται με τον προγραμματισμό eHouse4Android βιβλιοθήκες (eHouse για Android – Android Java) , τα οποία έχουν μεταφραστεί σε Java SE για τη συμβατότητα και την ευκολία της ανάπτυξης λογισμικού για διαφορετικά λειτουργικά συστήματα .
Ο ΚΩΔΙΚΑΣ ΠΗΓΗ
/ *
* Πρότυπο για εφαρμογές γραφικών σύστημα οπτικοποίησης , eHouse έξυπνο σπίτι
* Μόνο για εγγεγραμμένους χρήστες του συστήματος eHouse , Συνεργαζόμενες εταιρείες επιφύλαξη παντός δικαιώματος
*
* Απαιτεί Μαθήματα:
* Ehousecommunication . κατηγορία – στείλετε τα γεγονότα του συστήματος
* EhouseTCP . κατηγορία – Η προετοιμασία και συντήρηση των επικοινωνιών μέσω TCP / IP του ελεγκτή , Επικαιροποιημένα στοιχεία από τις εισόδους και εξόδους του συστήματος
* StatusEhouse . κατηγορία – Ρυθμίσεις αποθήκευσης δεδομένων και ελέγχου , ενημερώνεται σε συνεχή βάση μέσω TCP / IP ελεγκτές ehouse1 (485)
* StatusCommManager . κατηγορία – αποθηκεύει τα τρέχοντα δεδομένα και τις ρυθμίσεις των ελεγκτών , ενημερώνεται σε συνεχή βάση μέσω TCP / IP ελεγκτές ehouse2 (Ethernet)
* GraphicObject . κατηγορία – αποθήκευση των γραφικών αντικειμένων
* Οπτικοποίηση . κατηγορία – επιστήσει γραφικών αντικειμένων (γραμμές , ελλείψεις , ορθογώνια) και των υπηρεσιών που σχετίζονται με τα γεγονότα
*
* Εφαρμογή προτύπου σχεδιαστεί μια γραφική απεικόνιση του συστήματος eHouse
* Μόνο για εγγεγραμμένους χρήστες , Οι πωλητές , Copyright ΣΥΝΕΤΑΙΡΙΣΜΩΝ ISYS . En Επιφύλαξη Όλων των Δικαιωμάτων
*
* Υποχρεωτικά μαθήματα:
* Ehousecommunication . κατηγορία – αποστολή εκδηλώσεις στο σύστημα
* EhouseTCP . κατηγορία – προετοιμασία και συντήρηση TCP / IP επικοινωνία με τους ελεγκτές , ενημέρωση τρέχουσα κατάσταση των ελεγκτών
* StatusEhouse . κατηγορία – ελεγκτές ρυθμίσεις και αποθήκευση δεδομένων , ενημέρωση των δεδομένων (TCP / IP) για ehouse1 ελεγκτές (485)
* StatusCommManager . κατηγορία – ελεγκτές ρυθμίσεις και αποθήκευση δεδομένων , ενημέρωση των δεδομένων (TCP / IP) για ehouse2 ελεγκτές (Ethernet)
* GraphicObject . κατηγορία – γραφικά αντικείμενα αποθήκευσης δεδομένων
* Οπτικοποίηση . κατηγορία – σχεδίασης γραφικών αντικειμένων (γραμμές , Ελλείψεις , ορθογώνια) και τα γεγονότα που σχετίζονται με το χειρισμό τους
* /
ehouse4java πακέτο ;
εισαγωγή java . AWT . * ;
εισαγωγή java . AWT . συμβάν . * ;
εισαγωγή javax . κούνια . * ;
εισαγωγή javax . κούνια . συμβάν . Changeevent ;
εισαγωγή javax . κούνια . συμβάν . ChangeListener ;
Ehouse4java δημόσια τάξη εκτείνεται JFrame υλοποιεί ActionListener , {ChangeListener
/ **
* Κλάση υπεύθυνη για την προετοιμασία της κατάστασης του συστήματος , και τη δημιουργία
* Το κύριο παράθυρο της εφαρμογής . Εφαρμόζει διεπαφές που υποστηρίζουν την εκδήλωση
* Συνδέεται με κουμπιά .
*
* Κλάση Υπεύθυνος για την προετοιμασία της κατάστασης των τάξεων και τη δημιουργία
* Το κύριο παράθυρο της εφαρμογής . Που υλοποιεί διασυνδέσεις εκδηλώσεις υποστήριξης
* Σχετικά με τα κουμπιά .
* /
/ **
* Οπτικοποίηση αντικείμενο που περιέχει το παρόν Εμφανίσεις θέα
* /
Οπτικοποίηση δημόσια οπτικοποίηση ;
/ / Δημόσιες Επιλογές απεικόνισης ;
/ / Δημόσιες TextEvents οπτικοποίηση ;
/ **
* Παλέτας των κουμπιών ζουμ υποστήριξη , μετατόπιση και την αλλαγή
* Εμφανίσεις θέα
* /
JButton ZoomPlusButton ;
JButton ZoomMinusButton ;
JButton LeftShiftButton ;
JButton RightShiftButton ;
JButton UpButton ;
JButton DownButton ;
JButton ExitB = null ;
Επιλογές JButton ;
Προβολή JButton ;
Επιστροφή JButton ;
JButton [] = new JButton ViewsB [MAX_VIEWS_COUNT] ;
/ **
* Πίνακας με όλα τα κουμπιά
* /
ZoomPanel JPanel ;
/ **
* Πίνακας που περιέχει το παρόν εμφανίζεται οπτικοποίηση
* /
Viewpanel JPanel ;
/ **
* Ο πίνακας που περιέχει μια ομάδα από κουμπιά που χρησιμοποιούνται για την πρόσβαση των ελεγκτών κράτη ,
* Σύστημα προγράμματα κλπ . .
* /
Optionspanel JPanel ;
/ **
* Oprional scrollpanes
* /
JScrollPane jsp1 ;
JScrollPane jsp2 ;
δημόσια στατική buttonscounter int ;
δημόσια int centerX ;
δημόσια int CenterY ;
δημόσια int prevCenterX ;
δημόσια int prevCenterY ;
δημόσια int Ycompensation ;
prevOffsetX int = 0 , prevOffsetY = 0 ;
διπλό prevScaleX ;
διπλό prevScaleY ;
δημόσια τελικό διπλό zoomfactor = 0 . 3 ;
δημόσια στατική String previousoptionsview = ” ” ;
/ **
* Δημιουργεί νέα μορφή Ehouse4java . Ξεκινά την κατάσταση των τάξεων και των γραφικών
* Συστατικά με κύριο παράθυρο .
* /
δημόσια Ehouse4java () {
super ( ” EHouse ” ) ;
OnCreate () ;
setDefaultCloseOperation (JFrame . EXIT_ON_CLOSE) ;
/ **
* Ξεκινά όλα τα γραφικά στοιχεία
* /
addComponentToPane (getContentPane ()) ;

setSize (400 , 400) ;
setLocation (200 , 0) ;
setMinimumSize (νέα Διάσταση (200 , 200)) ;
setVisible (αλήθεια) ;
prevCenterX = (int) Οπτικοποίηση . getBounds () . getCenterX () ;
prevCenterY = (int) Οπτικοποίηση . getBounds () . getCenterY () ;
}
/ **
* Ξεκινά όλα τα εξαρτήματα ως ξηρό γραφικών πάνελ , κουμπιά , κύλισης , κλπ. . .
*
* @ Param παράθυρο
* /
addComponentToPane δημόσια άκυρη (παράθυρο Container) {

optionfirsttime = true ;

ExitB = νέα JButton ( ” Έξοδος ” ) ;
ExitB . setActionCommand ( ” Έξοδος ” ) ;
ExitB . addActionListener (αυτό) ;
. . .
indexView int = 0 ;
ZoomPanel = νέα JPanel (νέα FlowLayout ()) ;
viewpanel . προσθέστε (ZoomPanel , BorderLayout . PAGE_END) ;
ZoomPlusButton = νέα JButton ( ” + ” ) ;
ZoomPlusButton . setActionCommand ( ” ZoomPlus ” ) ;
ZoomPlusButton . addActionListener (αυτό) ;
ZoomPanel . προσθέστε (ZoomPlusButton) ;
ZoomMinusButton = νέα JButton ( ” – ” ) ;
ZoomMinusButton . setActionCommand ( ” ZoomMinus ” ) ;
ZoomMinusButton . addActionListener (αυτό) ;
ZoomPanel . προσθέστε (ZoomMinusButton) ;
. . .
}
/ **
* Αρχίζει και StatusEhouse τάξεις StatusCommManager από ελεγκτές φόρτωσης
* Κατάσταση
* /
δημόσια onCreate void () { . . . }
/ **
* @ Παράμ args τα επιχειρήματα της γραμμής εντολών
* /
δημόσια στατική άκυρη κύρια (String args []) {
/ *
* Δημιουργία και εμφανίζει τη φόρμα
* /
Ιάβα . AWT . EventQueue . invokeLater (νέα εκτελέσιμη () {
δημόσια εκτέλεση void () {
Ehouse4java νέα () . setVisible (αλήθεια) ;
}
}) ;
}
/ **
* Υποστηρίζει γεγονότα που επικαλείται κάνοντας κλικ στο κουμπί
*
* @ E Param
* /
@ Παράκαμψη
public void actionPerformed (e ActionEvent) {
διακόπτη (e . getActionCommand ()) {
περίπτωση ” ZoomPlus ” :
prevOffsetX = ehousecommunication . OffsetX ;
prevOffsetY = ehousecommunication . Αντισταθμιστικά Ωφελήματα ;
ehousecommunication . ScaleX * = (1 + zoomfactor) ; / / * 100/zoomleve ;
ehousecommunication . ScaleY * = (1 + zoomfactor) ; / / * 100/zoomleve ;
/ / Κεντράρισμα την άποψη μετά rescalling
ehousecommunication . OffsetX + = (int) ((Οπτικοποίηση . getBounds () . getCenterX () + prevOffsetX) * zoomfactor) ;
ehousecommunication . Αντισταθμιστικά Ωφελήματα + = (int) ((Οπτικοποίηση . getBounds () . getCenterY () + prevOffsetY) * zoomfactor) + Ycompensation / (1 / (2 * zoomfactor)) ;
EhouseTCP . ReadViewFile (ehousecommunication . currentview) ; / / Υπολογισμός zoom
Οραματισμός . βελτιώσουμε () ;
απόδοση ;
. . .
}
}
}