ہاؤس انفرادی تصور اور eHouse نظام میشن سے گرافیکل کنٹرول – جاوا

گرافیکل کے تصور eHouse ہوم میشن کے نظام کے لئے ترقی کے ماحول میں توسیع اور آخر صارفین ofeHouse نظام کے لئے ایک آزاد سافٹ ویئر کی ترقی کے امکانات پیدا , منسلک کمپنیوں اور کاروباری اداروں کو انفرادی طور پر شراکت کرنے کی خواہش رکھتے JSE (جاوا) کے ماحول میں پروگرامنگ . جاوا کے لئے eHouse (eHouse4Java) لوڈ، اتارنا Android اور ونڈوز موبائل لائبریریوں کے ساتھ مطابقت رکھتا ہے , آپ اپنے کنٹرول پینل اور گولیاں کے لئے اپنے سافٹ ویئر کو بنانے کے لئے کی اجازت دی .
لائبریری کی درخواست سانچے ہے اور قابل بناتا ہے:

  • ترتیب لوڈ , کنٹرولرز کے نام , نتائج , آدانوں , سینسر , وغیرہ .
  • مواصلاتی نظام کنٹرولر کو یقینی بنانے
  • وصول کرنے اور ضابطہ ربائی کرنا ڈیٹا کنٹرولر کا درجہ
  • کنٹرول حکم گراف (اشیاء کے تصور کے ساتھ) یا متن فارم سے بھیجنے (فیلڈ انتخاب کے ساتھ)
  • وائی ​​فائی کے ذریعے نظام کو کنٹرول , انٹرنیٹ , SMS , ای میل
  • گرافیکل تصور اور کنٹرول – گرافک قتل کے واقعات (eHouse نظام کے) اور آلات کی حیثیت سے وابستہ اشیاء کی ٹیکسٹ فائل لوڈ
  • کنٹرولر کے لئے خود کار طریقے سے تصور (کمرے)

تصور جاوا لائبریری کا استعمال کرتے ہوئے تخلیق کیا جاتا ہے ” سوئنگ ” ایک کے عناصر کے ساتھ ” JPanel ” , ” JButton ” وغیرہ .
ان چیزوں کو خود کار طریقے سے ہیں ” دوگنا – buffered ” , تاکہ ٹمٹماہٹ کے اثرات کا خاتمہ ہے , جو صارف کے لئے بہت پریشان ہے .
صارف کی تصویر بھی کنٹرول کر سکتے ہیں:

  • اندر اور باہر زوم
  • کو منتقل , نیچے اور کی طرف سے کی طرف سے
  • منتخب کر کے موجودہ نقطہ نظر تبدیل ” اختیارات ”
  • منتخب کر کے نظام کی گرافیکل تصور پر واپس ” دیکھیں ”

تصور eHouse نظام کے مثال کے طور پر:
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
میں Zooming اور توسیع پذیر ویکٹر گرافکس کے استعمال (SVG) کے ساتھ باہر کیا گیا , تاکہ تصویر پیمانے کی تبدیلی کے بعد اس کے معیار سے محروم نہیں کرتا:
 ترامیم کالعدم

نئی! ;
کنٹرولرز کی حیثیت خود کار طریقے سے دکھائے جاتے ہیں:
یہ ایک کمپیوٹر نیٹ ورک یا انٹرنیٹ کے ذریعے اپ ڈیٹ کیا جاتا ہے (TCP یا UDP) – آن لائن (حقیقی وقت میں)
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
منتخب کر کے ” اختیارات ” کمرے ریاستوں کنٹرولرز دیکھا جا سکتا ہے اور پروگراموں کو منتخب کریں .
آنے والے UDP کی حیثیت کو تبدیل کرنے rewizualizacjÄ خود کار طریقے سے کریں گے ™:  انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
 انٹیلجنٹ کنٹرول eHouse گھر آن لائن گرافکس اور تصور - جاوا اوپن سورس
ارکیٹیکچرل ڈیزائین کی اور ہوشیار گھر کی تنصیب کی بنیاد پر ڈیزائن کیا انفرادی طور پر تصور کے علاوہ میں خود کار طریقے سے نظام میں ہر کنٹرولر کے لئے آزادانہ طور پر تصور (خاص طور پر کے لئے RoomManagers اور EthernetRoomManager پیدا ہوتا ہے – انفرادی کمرے کے لئے) .
یہ ہر کمرے کے لئے آزاد کنٹرول پینل اور تصور کے لئے انفرادی طور پر کی اجازت دیتا ہے , منصوبے بنانے کے لئے تکاؤ کے بغیر – کی بنیاد تصور کے نظام .
CommManager (الارم سینسر کی ریاستوں کے لئے , ) Ouputs
 انٹیلجنٹ گھر کنٹرول eHouse گرافکس اور تصور خود کار طریقے سے آن لائن - جاوا اوپن سورس
RoomManager اور EthernetRoomManager کے لئے:
 انٹیلجنٹ گھر کنٹرول eHouse گرافکس اور تصور خود کار طریقے سے آن لائن - جاوا اوپن سورس
 انٹیلجنٹ گھر کنٹرول eHouse گرافکس اور تصور خود کار طریقے سے آن لائن - جاوا اوپن سورس
 انٹیلجنٹ گھر کنٹرول eHouse گرافکس اور تصور خود کار طریقے سے آن لائن - جاوا اوپن سورس
بوائلر کنٹرولر , CO کی وصولی (HeatManagera)
 انٹیلجنٹ گھر کنٹرول eHouse گرافکس اور تصور خود کار طریقے سے آن لائن - جاوا اوپن سورس
 انٹیلجنٹ گھر کنٹرول eHouse گرافکس اور تصور خود کار طریقے سے آن لائن - جاوا اوپن سورس
مزید معلومات پروگرامنگ کی لائبریریوں کے eHouse4Android پر وقف (لوڈ، اتارنا Android کے لئے eHouse مضامین میں پایا جا سکتا ہے ہے – لوڈ، اتارنا Android، اعلی درجے کا Java) , جو مطابقت اور سافٹ ویئر کی ترقی کے آسانی کے لئے مختلف آپریٹنگ سسٹم پر جاوا SE میں ترجمہ .
ماخذ کوڈ
* /
* گرافک تصور کے نظام کے لئے سانچہ ایپلی کیشنز , ہوشیار گھر eHouse
صرف * نظام eHouse کے رجسٹرڈ صارفین کے لئے , تعاون کمپنیوں جملہ حقوق محفوظ ہیں
*
* طبقات کی ضرورت ہے:
Ehousecommunication * . کلاس – نظام کو واقعات بھیجیں
EhouseTCP * . کلاس – کنٹرولر ابتدا ٹی سی پی اور مواصلات کی دیکھ بھال / IP , نظام آدانوں اور نتائج سے اپ ڈیٹ ڈیٹا
StatusEhouse * . کلاس – ڈیٹا اسٹوریج اور کنٹرولر کی ترتیبات , TCP / IP کنٹرولرز ehouse1 (485) پر ایک مسلسل جاری کی بنیاد پر اپ ڈیٹ کیا
StatusCommManager * . کلاس – موجودہ اعداد و شمار اور کنٹرولرز کی ترتیبات محفوظ , TCP / IP کنٹرولرز ehouse2 (ایتھرنیٹ) پر ایک مسلسل جاری کی بنیاد پر اپ ڈیٹ کیا
GraphicObject * . کلاس – گرافیکل اشیاء کی ذخیرہ
تصور * . کلاس – گرافیکل اشیاء (لائنیں اپنی طرف متوجہ , بیضویات , rectangles) اور سروس سے متعلق واقعات
*
* درخواست eHouse نظام کی ایک گرافک تصور ڈیزائن کیا سانچے
ONLY * رجسٹرڈ صارفین کے لئے , وینڈرز , کوآپریٹیو حقوق نقل و اشاعت ISYS . جملہ حقوق محفوظ ہیں EN
*
* مطلوبہ کلاس:
Ehousecommunication * . کلاس – نظام واقعات بھیجنے
EhouseTCP * . کلاس – کنٹرولرز کے ساتھ ابتدا اور بحالی کی TCP / IP مواصلات , کنٹرولرز کی موجودہ حیثیت کو اپ ڈیٹ کرنے کے
StatusEhouse * . کلاس – کنٹرولرز کی ترتیبات اور اعداد و شمار کی سٹوریج , ehouse1 کنٹرولرز کے لئے اپ ڈیٹ ڈیٹا (TCP IP /) (485)
StatusCommManager * . کلاس – کنٹرولرز کی ترتیبات اور اعداد و شمار کی سٹوریج , ehouse2 کنٹرولرز کے لئے ڈیٹا (TCP / IP) (ایتھرنیٹ) کو اپ ڈیٹ
GraphicObject * . کلاس – گرافک ڈیٹا سٹوریج کی اشیاء
تصور * . کلاس – ڈرائنگ گرافک اشیاء (لائنیں , بیضویات , rectangles) اور ہینڈلنگ کے واقعات ان سے متعلق
* /
ehouse4java پیکج ;
درآمد جاوا . awt . * ;
درآمد جاوا . awt . واقعہ . * ;
درآمد javax . سوئنگ . * ;
درآمد javax . سوئنگ . واقعہ . Changeevent ;
درآمد javax . سوئنگ . واقعہ . ChangeListener ;
Ehouse4java عوامی کلاس JFrame آلات ActionListener توسیع , ChangeListener {
*** /
* نظام کی حیثیت کی ابتدا کے لئے ذمہ دار کلاس , پیدا ہوتی ہے اور
* اہم درخواست ونڈو . انٹرفیس ہے کہ واقعہ کی حمایت نافذ
* بٹن کے ساتھ منسلک .
*
* کلاس کی حیثیت ابتدا اور بنانے کے لئے ذمہ دار کلاس
* اہم درخواست ونڈو . یہ انٹرفیس کی حمایت واقعات نافذ
* بٹن سے متعلق .
* /
*** /
* تصور جس میں وہ اس وقت دکھایا ہیں اعتراض
* /
عوامی تصور تصور ;
/ / عوامی تصور اختیارات ;
/ / عوامی تصور TextEvents ;
*** /
* Pallete zooming کی حمایت بٹن , منتقلی اور تبدیل کرنے
* دکھایا نقطہ نظر
* /
JButton ZoomPlusButton ;
JButton ZoomMinusButton ;
JButton LeftShiftButton ;
JButton RightShiftButton ;
JButton UpButton ;
JButton DownButton ;
JButton ExitB = شہوت انگیز null ;
JButton اختیارات ;
JButton دیکھیں ;
JButton واپس ;
کریں JButton [] = نئے JButton ViewsB [MAX_VIEWS_COUNT] ;
*** /
* تمام بٹن کے ساتھ پینل
* /
JPanel ZoomPanel ;
*** /
* پینل فی الحال تصور پر مشتمل ظاہر کیا
* /
JPanel viewpanel ;
*** /
* بٹن کے ایک گروپ کے کنٹرولرز ریاستوں تک رسائی حاصل کرنے کے لئے استعمال پر مشتمل پینل ,
* نظام الاوقات وغیرہ . .
* /
JPanel optionspanel ;
*** /
* Oprional scrollpanes
* /
JScrollPane jsp1 ;
JScrollPane jsp2 ;
عوامی مستحکم int buttonscounter ;
عوامی int centerX ;
عوامی int CenterY ;
عوامی int prevCenterX ;
عوامی int prevCenterY ;
عوامی int Ycompensation ;
prevOffsetX int 0 = , prevOffsetY = 0 ;
ڈبل prevScaleX ;
ڈبل prevScaleY ;
عوامی حتمی ڈبل zoomfactor = 0 . 3 ;
عوامی مستحکم جملہ previousoptionsview = ” ” ;
*** /
* نیا فارم Ehouse4java بناتا ہے . کلاسز اور گرافک کی حیثیت کا خالق
اہم ونڈو کے ساتھ * اجزاء .
* /
عوامی Ehouse4java () {
سپر ( ” 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 () ;
}
*** /
* گرافک پینل کے طور پر تمام خشک اجزاء کا خالق , بٹن , scrollbars , وغیرہ . .
*
* @ پرم پین
* /
عوامی باطل addComponentToPane (کنٹینر پین) {

optionfirsttime سچا = ;

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 () { . . . }
*** /
* @ پرم args کمانڈ لائن دلائل
* /
عوامی مستحکم باطل اہم (جملہ args []) {
* /
* اور فارم ظاہر بنائیں
* /
جاوا . awt . EventQueue . invokeLater (نئے Runnable () {
عوامی صفر رن () {
Ehouse4java نئے () . setVisible (حقیقی) ;
}
)} ;
}
*** /
* بٹن پر کلک کر کے ومباحثہ واقعات کی حمایت کرتا ہے
*
* @ پرم ای
* /
ووررائڈ @
عوامی actionPerformed باطل (ActionEvent ای) {
سوئچ (ای . getActionCommand ()) {
کیس ” ZoomPlus ” :
prevOffsetX ehousecommunication = . OffsetX ;
prevOffsetY = ehousecommunication . Offsets ;
ehousecommunication . ScaleX * = (1 zoomfactor +) ; / / 100/zoomleve * ;
ehousecommunication . ScaleY * = (1 zoomfactor +) ; / / 100/zoomleve * ;
/ / rescalling بعد بمرکز
ehousecommunication . OffsetX + = (int) ((تصور . getBounds () . getCenterX () prevOffsetX + zoomfactor) *) ;
ehousecommunication . Offsets + = (int) ((تصور . getBounds () . getCenterY () prevOffsetY +) zoomfactor *)) + / Ycompensation (1/2 (zoomfactor *) ;
EhouseTCP . ReadViewFile ehousecommunication ( . currentview) ; / / زوم کا حساب لگائیں
تصور . repaint () ;
واپس ;
. . .
}
}
}