JavaFX - प्रभाव

एक प्रभाव किसी भी कार्रवाई है जो ग्राफिक्स की उपस्थिति को बढ़ाता है। जावाएफएक्स में, एक प्रभाव एक एल्गोरिथ्म है जो नेत्रहीन रूप से अपनी उपस्थिति बढ़ाने के लिए नोड्स पर लगाया जाता है। की प्रभाव संपत्तिNode प्रभाव को निर्दिष्ट करने के लिए वर्ग का उपयोग किया जाता है।

JavaFX में, आप विभिन्न प्रभावों को नोड पर सेट कर सकते हैं जैसे कि bloom, blur तथा glow। इन प्रभावों में से प्रत्येक को एक वर्ग द्वारा दर्शाया गया है और ये सभी कक्षाएं नाम के पैकेज में उपलब्ध हैंjavafx.scene.effect

एक नोड पर प्रभाव लागू करना

आप का उपयोग कर एक नोड के लिए एक प्रभाव लागू कर सकते हैं setEffect()तरीका। इस पद्धति के लिए, आपको प्रभाव की वस्तु को पारित करने की आवश्यकता है।

एक नोड पर प्रभाव लागू करने के लिए, आपको निम्न करने की आवश्यकता है -

  • नोड बनाएँ।

  • लागू होने के लिए आवश्यक प्रभाव के संबंधित वर्ग को तुरंत लिखें।

  • प्रभाव के गुण निर्धारित करें।

  • का उपयोग करके नोड पर प्रभाव लागू करें setEffect() तरीका।

नोड्स बनाना

सबसे पहले, अपनी संबंधित कक्षाओं को तत्काल करके JavaFX एप्लिकेशन में नोड बनाएं।

उदाहरण के लिए, यदि आप अपने आवेदन में एक छवि को चमक प्रभाव लागू करना चाहते हैं। सबसे पहले, आपको छवि वर्ग को तत्काल बनाकर एक छवि नोड बनाने की आवश्यकता है और नीचे दिखाए गए अनुसार इसका दृश्य सेट करें।

//Creating an image 
Image image = new Image("https://www.tutorialspoint.com/green/images/logo.png"); 
       
//Setting the image view 
ImageView imageView = new ImageView(image); 

//Setting the position of the image 
imageView.setX(100); 
imageView.setY(70);  

//setting the fit height and width of the image view 
imageView.setFitHeight(200);
imageView.setFitWidth(400); 

//Setting the preserve ratio of the image view 
imageView.setPreserveRatio(true);

रिस्पांसिबल क्लास को इंस्टेंट करना

निर्मित नोड को लागू करने के लिए आवश्यक प्रभाव का प्रतिनिधित्व करने वाले वर्ग को तुरंत करें।

उदाहरण के लिए - चमक प्रभाव को लागू करने के लिए, आपको पलटने की आवश्यकता है Glow निम्न कोड बॉक्स में दिखाया गया वर्ग -

Glow glow = new Glow();

प्रभाव के गुण सेट करना

कक्षा को तुरंत करने के बाद, आपको इसके सेटर विधियों का उपयोग करके प्रभाव के लिए गुण सेट करने की आवश्यकता है।

उदाहरण के लिए - 3-आयामी बॉक्स खींचने के लिए, आपको इसकी चौड़ाई, ऊँचाई और गहराई को पास करना होगा। आप नीचे दिए गए अनुसार अपने संबंधित सेटर विधियों का उपयोग करके इन मूल्यों को निर्दिष्ट कर सकते हैं -

//setting the level property 
glow.setLevel(0.9);

नोड में प्रभाव जोड़ना

अंत में, आप नोड का उपयोग करके आवश्यक प्रभाव लागू कर सकते हैं setEffect()तरीका। उदाहरण के लिए: छवि नोड में चमक प्रभाव सेट करने के लिए, आपको ग्लो क्लास के ऑब्जेक्ट को इस विधि में पास करना होगा -

imageView.setEffect(glow);

JavaFX Effects- निम्नलिखित तालिका आपको जावाएफ़एक्स द्वारा प्रदान किए गए विभिन्न प्रभावों (वर्गों) की सूची प्रदान करती है। ये कक्षाएं नामक पैकेज में मौजूद हैंjavafx.scene.effect

S.No आकार और विवरण
1 रंग समायोजित करें

आप एक छवि के रंग को समायोजित करके उस पर रंग समायोजन प्रभाव लागू कर सकते हैं। इसमें का समायोजन शामिल हैhue, saturation, brightness तथा contrast प्रत्येक पिक्सेल पर

नाम का वर्ग ColorAdjust पैकेज का javafx.scene.effect रंग समायोजन प्रभाव का प्रतिनिधित्व करता है।

2 रंग इनपुट

रंग इनपुट प्रभाव आयत को खींचने और उसे रंग से भरने के समान आउटपुट देता है। अन्य प्रभावों के विपरीत, यदि यह प्रभाव किसी भी नोड पर लागू होता है, तो यह केवल एक आयताकार बॉक्स (नोड नहीं) प्रदर्शित करता है। यह प्रभाव ज्यादातर अन्य प्रभावों के लिए इनपुट के रूप में पारित करने के लिए उपयोग किया जाता है।

नाम का वर्ग ColorInput पैकेज का javafx.scene.effect रंग इनपुट प्रभाव का प्रतिनिधित्व करता है।

3 छवि इनपुट

JavaFX में इमेज इनपुट इफ़ेक्ट बस एक इमेज को JavaFX स्क्रीन पर एम्बेड करता है।

कलर इनपुट इफ़ेक्ट की तरह (इसका उपयोग अन्य प्रभाव के लिए निर्दिष्ट रंगीन आयताकार क्षेत्र को पास करने के लिए किया जाता है), इमेज इनपुट इफ़ेक्ट का उपयोग निर्दिष्ट इमेज को किसी अन्य प्रभाव के इनपुट के रूप में पास करने के लिए किया जाता है।

नाम का वर्ग ImageInput पैकेज का javafx.scene.effect छवि इनपुट प्रभाव का प्रतिनिधित्व करता है।

4 मिश्रण

सामान्य तौर पर, मिश्रण का अर्थ है दो या दो से अधिक भिन्न चीजों या पदार्थों का मिश्रण। यदि हम इस मिश्रण प्रभाव को लागू करते हैं, तो यह एक ही स्थान पर दो अलग-अलग इनपुटों के पिक्सल लेता है, और यह एक संयुक्त आउटपुट का उत्पादन करता हैblend mode

नाम का वर्ग Blend पैकेज का javafx.scene.effect मिश्रण प्रभाव का प्रतिनिधित्व करता है।

5 फूल का खिलना

खिलने वाले प्रभाव को लागू करने पर, नोड के कुछ हिस्सों में पिक्सेल चमक के लिए बनाए जाते हैं।

नाम का वर्ग Bloom पैकेज का javafx.scene.effect खिल प्रभाव का प्रतिनिधित्व करता है।

6 चमक

खिलने की तरह ही, ग्लो इफ़ेक्ट दी गई इनपुट इमेज को ग्लो करता है, यह इफ़ेक्ट इनपुट ब्राइट के शानदार पिक्सल्स बनाता है।

नाम का वर्ग Glow पैकेज का javafx.scene.effect चमक प्रभाव का प्रतिनिधित्व करता है।

7 बॉक्स ब्लर

इस धुंधला प्रभाव को एक नोड पर लागू करने पर, यह अस्पष्ट बना दिया जाता है। बॉक्स ब्लर जावाएफएक्स द्वारा प्रदान किया जाने वाला एक प्रकार का धब्बा प्रभाव है। इस प्रभाव में, जब हम धब्बा को नोड पर लागू करते हैं, तो एक साधारण बॉक्स फ़िल्टर का उपयोग किया जाता है।

नाम का वर्ग BoxBlur पैकेज का javafx.scene.effect Boxblur प्रभाव का प्रतिनिधित्व करता है।

8 गौस्सियन धुंधलापन

बॉक्स ब्लर गाऊसी की तरह ही जावाएफएक्स में नोड्स को धुंधला करने के लिए एक प्रभाव है। में एकमात्र अंतर हैGaussian Blur effect यह है कि एक गाऊसी सजा कर्नेल एक धुंधला प्रभाव पैदा करने के लिए प्रयोग किया जाता है।

पैकेज के गौसियनब्लूर नाम का वर्ग javafx.scene.effect गाऊसी धुंधला प्रभाव का प्रतिनिधित्व करता है।

9 धीमी गति

गॉसियन इफेक्ट्स की तरह, मोशन ब्लर जावाएफएक्स में नोड्स को धुंधला करने के लिए एक प्रभाव है। यह एक धुंधला प्रभाव पैदा करने के लिए एक गाऊसी दृढ़ संकल्प कर्नेल का उपयोग करता है, लेकिन अंतर इस प्रभाव में है कि गाऊसी दृढ़ संकल्प कर्नेल का उपयोग एक निर्दिष्ट कोण के साथ किया जाता है।

नाम का वर्ग MotionBlur पैकेज का javafx.scene.effect मोशन ब्लर प्रभाव का प्रतिनिधित्व करता है।

10 प्रतिबिंब

JavaFX में एक प्रतिबिंब प्रभाव को लागू करने पर, इसका एक प्रतिबिंब नोड के नीचे जोड़ा जाता है।

नाम का वर्ग Reflection पैकेज का javafx.scene.effect प्रतिबिंब प्रभाव का प्रतिनिधित्व करता है।

1 1 SepiaTone

जावाएफएक्स (सामान्य रूप में छवि) में एक नोड को सीपिया टोन प्रभाव लागू करने पर, इसे लाल भूरे रंग के साथ टोन किया जाता है।

नाम का वर्ग SepiaTone पैकेज का javafx.scene.effect सेपिया टोन प्रभाव का प्रतिनिधित्व करता है।

12 साया

यह प्रभाव धुंधले किनारों के साथ निर्दिष्ट नोड का एक डुप्लिकेट बनाता है।

नाम का वर्ग Shadow पैकेज का javafx.scene.effect सेपिया टोन प्रभाव का प्रतिनिधित्व करता है।

13 परछाई डालना

इस प्रभाव को नोड पर लागू करने पर, निर्दिष्ट नोड के पीछे एक छाया बनाई जाएगी।

नाम का वर्ग DropShadow पैकेज का javafx.scene.effect ड्रॉप छाया प्रभाव का प्रतिनिधित्व करता है।

14 भीतरी छाया

इस प्रभाव को नोड पर लागू करने पर, नोड के किनारों के अंदर एक छाया बनाई जाएगी।

नाम का वर्ग InnerShadow पैकेज का javafx.scene.effect आंतरिक छाया प्रभाव का प्रतिनिधित्व करता है।

15 प्रकाश

प्रकाश स्रोत से प्रकाश को अनुकरण करने के लिए प्रकाश प्रभाव का उपयोग किया जाता है। विभिन्न प्रकार के प्रकाश स्रोत हैंpoint, distant तथा spot

नाम का वर्ग Lighting पैकेज का javafx.scene.effect प्रकाश प्रभाव का प्रतिनिधित्व करता है।

16 Light.Distant

इस प्रभाव को एक नोड पर लागू करने पर, एक प्रकाश उस पर सिम्युलेटेड होता है, जैसे कि यह एक दूर के प्रकाश स्रोत द्वारा उत्पन्न किया जा रहा हो।

Distant Light Source- एक स्रोत जो नोड से कुछ दूरी पर है। यहाँ, स्रोत से प्रकाश को एक दिशा में देखा जाता है।

नाम का वर्ग Light.Distant पैकेज का javafx.scene.effect दूर के प्रकाश स्रोत का प्रतिनिधित्व करता है।

17 हल्का निशान

इस प्रभाव को एक नोड पर लागू करने पर, एक प्रकाश उस पर सिम्युलेटेड होता है, जैसे कि यह स्पॉट लाइट द्वारा उत्पन्न किया जा रहा हो।

Spot light Source- इस स्रोत से प्रकाश सभी दिशाओं में दिखाई देता है। प्रकाश की तीव्रता स्रोत से वस्तु की दूरी पर निर्भर करती है।

नाम का वर्ग Light.Spot पैकेज का javafx.scene.effect दूर के प्रकाश स्रोत का प्रतिनिधित्व करता है।

18 Point.Spot

इस प्रभाव को एक नोड पर लागू करने पर, एक प्रकाश उस पर सिम्युलेटेड होता है, जैसे कि यह एक बिंदु प्रकाश स्रोत द्वारा उत्पन्न किया जा रहा है।

Point Light Source- इस स्रोत से प्रकाश एक बिंदु से सभी दिशाओं में दिखाई देता है। प्रकाश की तीव्रता स्रोत से वस्तु की दूरी पर निर्भर करती है।

नाम का वर्ग Point.Spot पैकेज javafx.scene.effect बिंदु प्रकाश का प्रतिनिधित्व करता है।