VPython – आम लोगो के लिए 3D प्रोग्रामिंग

VPython 3D डिस्प्ले और एनीमेशन बनाना आसान बनाता है, यहाँ तक की ऐसे लोगों के लिए भी जिन्हें प्रोग्रामिंग का ज्यादा अनुभव नहीं है| क्यूंकि ये Python पर आधारित है, यह अनुभवी प्रोग्रामर और शोधकर्ताओ के भी बहुत काम आ सकता है| कुछ उदहारण देखने के लिए यहाँ क्लिक करे|

त्वरित परिचय के लिए इस Youtube विडियो को देखिये, लेकिन यह ध्यान रखें की वर्तमान के VPython 7 वर्शन के module का नाम “vpython” है न की “visual”, और ग्राफ़िक्स डिस्प्ले को एक ब्राउज़र तब में दिखाया जाता है:

(इनमें से कोई भी विडियो हिंदी में अभी नहीं है)

VPython का उपयोग कैसे शुरू करें

Python या VPython में नए हैं? GlowScript VPython से शुरू करें:

  • glowscript.org पर जाए और एक अकाउंट बनाये|
    • अब आपको यह पंक्ति दिखेगी – “You are signed in as <आपका username> and your programs are here.” “Here” पे क्लिक करे|
    • अब “Create New Program” पर क्लिक करें और इसे “box” का नाम दें| अब आपको यह पंक्ति दिखेगी – “Glowscript 2.7 VPython”| इसे अगली पंक्ति पर डाले – “box()”
  • अब  “Run this program” पर क्लिक करे| आपको एक सफ़ेद बॉक्स दिखेगा एक काले background पे.
    • अब अपने माउस के दायें बटन (या CTRL-drag बाया button) को कैमरा को घुमाने के लिए उपयोग करें जिससे की आप scene को अलग कोनो से देख सकते हैं|
    • Zoom को छोटा या बड़ा करने के लिए दो बटन्स का उपयोग करे, या फिर ALT/OPTION-drag, या माउस के scrollwheel का उपयोग करें| टचस्क्रीन: swipe ya two-finger rotate; pinch/extend to zoom| पैन करने के लिए – shift-drag

क्या आप अनुभवी Python / VPython उपयोगकर्ता हैं? सभी Python Modules तक पहुँच चाहते हैं? VPython 7 देखें:

  • Continuum Anaconda (या Enthought Canopy) Python distribution को इनस्टॉल करें. हम सलाह देते हैं की आप Python 3.5 या उससे आगे के वर्शन को चुनें, विशेष रूप से अगर आपके कंप्यूटर में “Classic” VPython / Python 2.7 पहले से इन्सटाल्ड है| अगर आप Python विशेषज्ञ हैं और Jupyter notebooks का उपयोग  करना चाहते हैं, तो आप IPython और Jupyter modules को अपने वर्तमान Python इंस्टालेशन में इनस्टॉल कर सकते हैं; jupyter.org देखें|
  • Power Shell या Command Prompt {विंडोज) या टर्मिनल (मैक/लिनक्स) में यह कमांड चलाये, जओ की Python 2.7, 3.4, 3.5, or 3.6 के लिए VPython 7 इनस्टॉल करेगा: “pip install vpython”
    या फिर अगर आप Anaconda का उपयोग कर रहे हैं, तोह “conda install -c vpython vpython”
    यह module अपडेट होता रहेगा| आप सबसे नया वर्शन इस तरह से ले सकते हैं – “pip install vpython –upgrade”
    या फिर अगर आप Anaconda का उपयोग कर रहे हैं, तोह, “conda update -c vpython vpython”
    आप IDLE से चला सकते हैं या Spyder एडिटर/लांचर, Python 3.5 (3.5.3 या उससे आगे) या 3.6 के साथ से, लेकिन सबसे नया Spyder 3.2 vpython के उपयोग को सपोर्ट नहीं करता है| Spyder देवेलोपेर्स इस मुद्दे से अवगत हैं और उन्होंने अपने आगे के वेर्सिओंस में इसे ठीक करने का आस्वासन दिया है| इस मुद्दे के बारे में और जानकारी यहाँ है, इसके समाधान के साथ. एक सामान्य विकल्प ये है की पुराना वर्शन यानि Spyder 3.1.4 इनस्टॉल करे, इस कोड को टर्मिनल पे execute करके – “conda install spyder=3.1.4”
    आप Sypder को Spyder आइकॉन पर क्लिक करके शुरू कर सकते हैं जो की Anaconda के साथ इनस्टॉल हुआ है, या आप Command Prompt पर “spyder” डाल कर इसे शुरू कर सकते हैं| Spyder में आपको Run > Configure में जाना पड़ेगा और उल्लेख करना होगा “Execute in a new dedicated Python console”.
    अगर आप डाटा फाइल्स को पढ़ते हैं या उनमें लिखते हैं, और आप आप डिफ़ॉल्ट रूप से इन फाइल्स को अपने Python प्रोग्राम के फोल्डर में सेव करना चाहते हैं, तो यहाँ जाए – Tools > Preferences > Run और “Default working directory” को “the script directory” के लिए चुने| आप “Tools > Preferences > Global working directory” में यह उल्लेख कर सकते हैं की Spyder किस डायरेक्टरी में सबसे पहले देखेगा जब उसे प्रोग्राम को खोजना हो|
    कुछ मैक उसेर्स ने ये सुचना दी है की Spyder से चलाना काम नहीं करता है| यह समाधान, एक नया प्रोजेक्ट बना के नए एनवायरनमेंट को शुरू करके, काम करता है –
    conda create -n vpclean -c vpython vpython python=3
    source activate vpclean
    Jupyter नोटबुक (Python 2.7, 3.4, 3.5, 3.6) का उपयोग करने के लिए: Jupyter नोटबुक को शुरू करने के दो तरीके हैं| टर्मिनल में, “jupyter notebook” execute करें. या (आप कौन सा ऑपरेटिंग सिस्टम का उपयोग कर रहे हैं उसपे निर्भर करता है), “Jupyter Notebook”  के आइकॉन पे डबल क्लिक करें जो की Ananconda से जुड़े हुए टूल्स में दिखाया जाता है| दाहिने में एक पुलडाउन मेनू है जिससे नया नोटबुक बना सकते हैं, और अगर आप “VPython” चुनते है, आपको यह इम्पोर्ट मिलेगा, जिसकी अगर आप Python 3 का उपयोग कर रहे हैं तो जरुरत नहीं है (आप नोटबुक का प्रकार मेनू से चंगे कर सकते हैं “Kernel > Change kernel”):
    from __future__ import division, print_function
    अगर आपके पास मैक ऑपरेटिंग सिस्टम का सबसे नयी रिलीज़ है तो फिर Jupyter नोटबुक को शुरू करने के लिए ये execute करना पड़ सकता है:
    jupyter notebook –browser=Chrome
    Jupyter नोटबुक के साथ या उसके बिना, “from vpython import *” सारे मैथ्स functions को इम्पोर्ट करता है – clock(), random(), and arange()| यह प्रोग्राम्स का GlowScript vpython और VPython 7 के बिच मूव कारण आसान बनता है|
  • एक test प्रोग्राम लिखें: ये छोटा प्रोग्राम एक सफ़ेद box दिखायेगा एक काले background पर:
    from vpython import *
    box()
    एक VPython प्रोग्राम को Jupyter नोटबुक में चलाना: सबसे पहले सेल पे क्लिक करें (जिसमें vpython इम्पोर्ट स्टेटमेंट है), फिर रन आइकॉन पे क्लिक करे जोकि एक लंबवत रेखा को छूने वाला दाएं तरफ का त्रिकोण है| वर्तमान में, VPython प्रोग्राम को फिरसे चलने के लिए आपको परिपत्र तीर वाले आइकॉन पर क्लिक करना होगा जिससे कर्नेल रीस्टार्ट होगा और फिर लाल highlighted बटन पर क्लिक करें, और फिर पहले सेल में क्लिक करें और फिर रन आइकॉन पर क्लिक करें|
    कुछ उसेर्स को पहले सेल पर यह पंक्तियाँ लिख्नसे से आसानी होती है:
    from vpython import*
    scene = canvas()
    फिर बाकी बचे हुए प्रोग्राम को आगे वाले सेल्स में डालें| इसका परिणाम यह होगा की 3D डिस्प्ले पहले सेल के निचे दिखेगा नाकि आखरी सेल के निचे| ये यह भी सुनिश्चित करता है की vpython module पूरी तरह से से इनिशियलाइज़ हो चूका है आगे बढ़ने से पहले| और, आप प्रोग्राम को आसानी से फिर से चला सकते हो|
  • कैमरा को घुमाना और ज़ूम करने का तरीका GlowScript VPython जैसा ही है|
  • प्रलेखन : GlowScript VPython हेल्प को देखें. सिर्फ एक GlowScript feature जो अबतक Jupyter नोटबुक में लागु नहीं किया गया है वो है कीबोर्ड द्वारा इंटरेक्शन, इसे Jupyter नोटबुक द्वारा संसाधित होने वाले कीबोर्ड इनपुट के संबंधों की समझने को लंबित किया गया है|
  • Demo प्रोग्राम:  Jupyter notebooks के लिए कई सारे demo प्रोग्राम्स हैं (zip फाइल) और jupyter notebooks के बिना भी (zip फाइल)|
  • Demo प्रोग्राम्स को रिमोटली चलाये: कुछ demo प्रोग्राम्स का एक Binder पैकेज है जोकी आपको Jupyter VPython प्रोग्राम्स ऐसे computers और मोबाइल devices में चलाने देता है जिनमें Python इन्सटाल्ड नहीं है| Binder mechanism के बारे में आप यहाँ और जान सकते हैं| क्यूंकि Binder सर्वर्स बहुत सारे लोगो के बिच शेयर होते हैं, इसका प्रदर्शन हर घंटे या अलग समाया पर अलग हो सकता है|
  • वो लोग जिनके पास क्लासिक VPython इन्सटाल्ड है और इसे रखना चाहते हैं, उन्हें एक नया एनवायरनमेंट बनाना चाहिए जिसमें नए VPython को try करने के लिए: “conda create -c vpython -n vpython_jup_env vpython python”| नए एनवायरनमेंट को बनाने के बाद आपको इसे एक्टिवेट करना होगा नए VPython को try करना होगा|

GlowScript VPython और VPython 7, क्लासिक VPython 6 से कैसे अलग है

  • Vectors को vector(x,y,z) या vec(x,y,z) से रेप्रेसेंत करना होगा न की (x,y,z) से|
  • “display” के नाम को “canvas” में बदल दिया गया है (तकनिकी कारणों के लिए)|
  • “gdisplay” के नाम को “graph” में बदल गया है|
  • “curve” और “points” ओबजेक्ट्स के अब नए तरीके हैं|

Glowscript.org के VPython हेल्प में एक रूपांतरण प्रोग्राम है Classic को GlowScript सिंटेक्स में बदलने के लिए; और यह मुख्य मतभेदों से निपटने का एक अपूर्ण लेकिन उपयोगी काम करता है|

भविष्य में विकास के लिए योजनाएं

पुराना क्लासिक VPython 6

  • यहां पुराने VPython 6 पर प्रलेखन है, जो अभी भी उपलब्ध है लेकिन अब समर्थित नहीं है।

जानकारी के अतिरिक्त स्रोत

(इनमें से कोई भी हिंदी में नहीं है)

प्रलेखन: अवलोकन, ट्यूटोरियल, और विस्तृत दस्तावेज़ीकरण

यूजर फोरम

Stack Overflow में VPhython: उपयोगकर्ताओं के लिए VPython के बारे में साझा करने के लिए एक थर्ड-पार्टी प्रश्न और उत्तर साइट। हम लोगों को इस उपयोगकर्ता मंच पर पोस्ट करने के लिए प्रोत्साहित करते हैं, क्योंकि वहां बड़ी संख्या में जानकार उपयोगकर्ता हैं।

Python वेब साइट: Python प्रोग्रामिंग भाषा, जिस पर VPython आधारित है

Trinklet.io पर टूल्स का उपयोग करके आप आसानी से GlowScript VPython एडिटिंग और executing अपने वेब पेज पे डाल सकते हैं|

विभिन्न प्रकार के दिलचस्प VPython प्रोग्राम्स के तस्वीरों और फिल्मों की एक गैलरी पोस्ट की है।

आप http://vpython.org/ में बाकी स्त्रोत देख सकते हैं| मैंने उन सबको यहाँ नहीं लिखा है क्यूंकि वो हिंदी में नहीं हैं|

bruce.sherwood*at*gmail.com को लिखें अगर आपको वो नहीं मिला जो आप खोज रहे हैं, या फिर हमें बताये की आप VPython का उपयोग किस तरह से कर रहे हैं|

यह अनुवाद आखिरी बार 9 मई, 2018 को अपडेट किया गया था|