2D Transformation क्या हैं? [Two Dimensional Transformations – in hindi]
2D Transformations क्या है और इसकी परिभाषा:
Transformation computer graphics का मुख्य तत्व है जब किसी graphics के प्रदर्शन में परिवर्तन किया जाता है तो उसे transformation कहा जाता है। graphics के प्रदर्शन में अनेक प्रकार के परिवर्तन जैसे उसे ऊपर या नीचे move करना, rotate करना, scaling करना, shearing इत्यादि लागू कर सकते हैं जिन्हें transformation कहेंगे। यदि transformation का कार्य 2D graphics, object पर किया जा रहा है तो उसे 2D transformation कहते हैं। इन्होंने चित्र से समझते हैं।
Viewing transformation (दर्शन रूपांतरण):
यह एक ऐसी विधि है जिसमें geometry data को device में प्रदर्शित करने के लिए image data के रूप में परिवर्तित किया जाता है। viewing transformation को समझने के लिए हमको world coordinates और screen coordinates को समझना होगा। यह भी जानना होगा कि window से view port transformation किस प्रकार किया जाता है।
जब output device में किसी object को प्रदर्शित करते हैं तो यह निर्धारित करते हैं कि data का कौन सा भाग प्रदर्शित होगा और वह display device के किस भाग में प्रदर्शित होगा । 2D Dimensional object को प्रदर्शित करने के लिए पूरे picture के किसी एक भाग को चुनते हैं। इसके प्रदर्शन का pipeline कुछ निम्न प्रकार निर्धारित होता है:
उपरोक्त coordinate को हम निम्न प्रकार परिभाषित करेंगे:
Model coordinates: इस coordinates मे एक स्वतंत्र object तैयार किया जाता है इसलिए इसे model coordinates कहते है।
World coordinates: किसी एक scene में जब अनेक संबंधित object तैयार किया जाता है तो उन्हें world coordinates कहते हैं।
Viewing coordinates: यह coordinates तब प्राप्त होती है जब coordinate system के द्वारा रूपांतरण (transformation) का कार्य पूर्ण कर लिया जाता है।
Normalized coordinates: स्वतंत्र device के लिए window के अनुसार एक object को इस coordinate के द्वारा बदलने का कार्य किया जाता है।
Device coordinates: Normalize किये गये coordinate को निर्धारित device में प्रदर्शित करने का कार्य इस coordinate में किया जाता है।
Window से Viewing transformation को हम निम्न चित्र से समझ सकते हैं:
Basic 2D Transformation (Translation, Rotation, Scaling):
Transformation को matrix के रूप मे प्रस्तुत किया जाता है। Transformation, Cartesian plane के अनुसार किसी object या point को एक स्थान से दूसरे स्थान ले जाना(move), उनके आकार के कम या ज्यादा करना, rotate करना इत्यादि आते हैं। Transformation नीचे चार प्रकार के होते हैं।
Translation:
यह transformation के अन्य प्रकारों में से सबसे सरल प्रकार है। object को move करने को translation कहा जाता है अर्थात object को किसी एक दिशा में repositioning करने को translation कहा जाता है।
Translation को समझने के लिए एक उदाहरण लेते हैं जैसे एक object को x एवं y direction में move करना चाहते हैं, यहां a को x-direction एवं b को y-direction मानते हैं और इसे matrix में निम्न प्रकार से प्रस्तुत कर सकते हैं:
यदि हम matrix को प्राप्त करने के लिए a एवं b को एक मान देते हैं जैसे a को -3 एवं b को 2 मान देते हैं तो नया matrix निम्न प्रकार बनेगा:
Rotation:
किसी object को circular path में घुमाने को rotation कहते हैं। Rotation के लिए एक pivot point की आवश्यकता होती है जिसके आधार पर एक निश्चित degree में object को clockwise एवं anti-clockwise rotate किया जाता है।
Object को एक खास angle θ (theta) में rotate किया जाता है। rotation को समझने के लिए एक उदाहरण लेते हैं, यदि हम एक object को (0,0) point से anti-clockwise करना चाहते हैं। जिसमें θ एक कोण कौन है तो इसे matrix के रूप में निम्न प्रकार प्रस्तुत करेंगे:
Scaling:
Object के आकार को बदलने को scaling कहा जाता है अर्थात object को उसके वास्तविक आकार से बड़ा या छोटा करते हैं तो इसे scaling कहेंगे। Scaling transformation का उपयोग करके object को वास्तविक coordinate से गुणा करके इच्छाअनुसार परिणाम प्राप्त कर सकते हैं।
Scaling को समझने के लिए एक उदाहरण लेते हैं मान लेते हैं कि एक object (x,y) coordinate में है जिसमें scaling factor को (Sx, Sy) मानते हैं जो कि scaling के पश्चात नया x’ एवं y’ नामक coordinate बनाता है। इसे गणितीय रूप में निम्न प्रकार set करेंगे:
X’=X.Sx और Y’=Y.Sy
इसी प्रकार यदि इसे Matrix में प्रस्तुत करना चाहते हैं मानते हैं कि s को x-direction में और t को y-direction में बढ़ाते हैं। तो इसके लिए निम्न प्रकार matrix का प्रयोग करेंगे।
यदि यहां हम s को 1 से कम मन देते हैं तो object आकार छोटा होगा और बढ़ाते हैं तो आकार बड़ा होते जाएगा।
Reflection:
किसी वास्तविक object के प्रतिबिंब(mirror) बनाने को reflection कहते हैं। प्रतिबिंब बनाने के लिए object के आकार को न बदलते हुए उस object को 180° में rotate कर सकते हैं।
यदि किसी 2D object को y-coordinate में reflect करना चाहते हैं तो इसके लिए निम्न प्रकार matrix लिखेंगे: