Tip:
Highlight text to annotate it
X
>> डेविड मालन: चलो एक प्रोग्राम लिखने दो. के साथ एक खिड़की और एक चक्र को शामिल
आगे पीछे उछल चक्र बाएँ और दाएँ बंद
उस खिड़की के किनारों.
ऐसा करने के लिए, के स्टैनफोर्ड का उपयोग करते हैं पोर्टेबल लाइब्रेरी, और पहली चलो
gevents.h शामिल हम कर सकते हैं कि इतना माउस आंदोलनों के लिए सुनो.
चलो फिर gobjects.h शामिल करते हैं कि इतना हम ovals तरह बातें की घोषणा कर सकते हैं या
हलकों, वास्तव में.
और फिर gwindow.h शामिल है कि इतना हम के लिए एक ग्राफिकल खिड़की है
सब कुछ.
>> सामान्य तरीके से मुख्य घोषित करते हैं.
और चलो अब घोषणा और इन्स्तांत जाने या उस खिड़की, GWindow बना सकते हैं -
और हम चर विंडो फोन करता हूँ -
newGWindow हो जाता है.
और हम मनमाने ढंग से यह कर दूँगा 240 पिक्सल द्वारा 320 पिक्सल.
>> चलो अगले एक चक्र इन्स्तांत करते हैं.
लेकिन इस चक्र इन्स्तांत, हम थोड़ा और अधिक काम करने की जरूरत है.
विशेष रूप से, के इस चक्र में भरने पूरी बात तो यह है कि
सिर्फ काले और नहीं उसके रूपरेखा.
GOval -
हम चक्र यह फोन करता हूँ -
newGOval हो जाता है.
हम 0, 110 में इस अंडाकार डाल देता हूँ, और हम करेंगे द्वारा व्यापक अंडाकार 20 पिक्सल बनाने
उच्च 20 पिक्सल - दूसरे शब्दों में, एक 20 के व्यास या 10 के एक त्रिज्या.
>> चलो अब उस चक्र का रंग निर्धारित करते हैं बोली, गंदें शब्द बोलना, होना करने के लिए 'काला. " चलो
अब यह भरा होना सेट सच निर्दिष्ट करके.
और अब अंत में, के लिए चक्र जोड़ दें खिड़की के रूप में इस प्रकार है, जिससे
बाद पूर्व में जोड़ा जाता है.
>> चलो अब एक डबल की घोषणा करते हैं.
हम वेग यह फोन करता हूँ.
और कुछ हद तक मनमाने ढंग से, हम कहते हैं इस मंडली के वेग हो जाएगा
2.0, दूसरे शब्दों में, 2 पिक्सल समय की हर इकाई के लिए.
और अब जानबूझकर चलो एक अनंत लूप प्रेरित.
>> तो इस चक्र बनाने के लिए कैसे आगे पीछे उछाल?
खैर चलो इस पाश में कल्पना करते हैं कि समय की हर इकाई के लिए, हम कर रहे हैं
वृत्त सिर्फ एक छोटे से स्थानांतरित करने के लिए जा रहा 2 पिक्सल के अपने वेग पर आधारित बिट
समय की प्रति इकाई.
लेकिन लगातार, हम करने के लिए जा रहे हैं चक्र को छू रहा है अगर जाँच
स्क्रीन या बाईं के ठीक किनारे स्क्रीन के किनारे, क्योंकि यदि ऐसा है तो, हम
इतनी बात करने के लिए, बाउंस करने के लिए इसकी जरूरत है.
>> कैसे लागू करने के लिए शेख़ी की धारणा?
खैर, हम करने के लिए 2 पिक्सल पर जा रहे हैं सही समय की प्रति इकाई, उछाल
ठीक किनारे, हम बस पलट सकता है कि प्रति यूनिट नकारात्मक 2 पिक्सल होने के लिए
समय की, जिससे नकार वेग.
तो वास्तव में, उछल अपेक्षाकृत है सीधी.
>> के पहले यह कई द्वारा सर्कल चलते हैं इस से एक्स अक्ष के साथ पिक्सल,
Y-अक्ष के साथ कई पिक्सेल.
दूसरे शब्दों में, हम यह नहीं करना चाहती सब पर Y-अक्ष के साथ चलते हैं.
हम केवल यह वापस उछाल करना चाहते हैं और आगे के लिए छोड़ दिया और सही.
>> और चलो अब इस लूप के भीतर की जाँच करते हैं, तो वृत्त की एक्स समन्वय प्लस
वृत्त की चौड़ाई अधिक है या इसके बराबर
खिड़की की चौड़ाई -
दूसरे शब्दों में, अगर चक्र के स्थान प्लस चक्र की चौड़ाई
खुद बढ़त अतीत अब है खिड़की की, हम चाहते हैं
बेहतर हमारे वेग को उल्टा -
वेग जिससे नकारात्मक वेग हो जाता है एक करने के लिए एक सकारात्मक flipping
एक सकारात्मक को नकारात्मक या एक नकारात्मक.
लेकिन चक्र से क्या चल रहा है सही करने के लिए छोड़ दिया है और यह इसलिए हिट
बाएँ किनारे?
दूसरे शब्दों में, एक्स समन्वय की अगर सर्कल अब कम से कम या बराबर है
0 करने के लिए, आगे और फिर से चलते हैं हमारे वेग पलटना.
>> तो क्यों मैं में नहीं जोड़ा है वृत्त इस की चौड़ाई
समय, मैं पहले किया था?
खैर, यह ध्यान रखें कि निर्देशांक एक वस्तु की परिभाषित कर रहे हैं
इसके शीर्ष बाएँ हाथ कोने से, नहीं अपने बीच से.
और तो चक्र से बढ़ रहा है जब सही करने के लिए छोड़ दिया है, हम जांच की जरूरत
चाहे के ठीक किनारे वृत्त बीत चुका है
खिड़की के ठीक किनारे.
तो हमारे पास है, वह यह है कि क्या यह पता लगाने के लिए वृत्त का x-निर्देशांक पाने के लिए
प्लस चक्र की चौड़ाई स्थानांतरित करने के लिए खुद को शीर्ष बाएँ हाथ से
कोने, प्रभावी ढंग से करने के लिए शीर्ष दाएँ हाथ के कोने.
सर्कल के लिए सही से बढ़ रहा है बाईं, इस बीच, हम की जरूरत नहीं है
, इस तरह के अलावा के साथ परेशान है क्योंकि वृत्त के ऊपरी बाएँ कोने है
हम हूँ पहले से ही मूल्य एक्स से मिलता है.
>> चलो अब गेंद चलते हैं.
चलो अब, को बचाने के संकलन, और इस चलाते हैं कार्यक्रम,. / उछाल उछाल.
और वहाँ हम एक कार्यक्रम है.
>> लेकिन सर्कल, तो रफ़ू तेजी से बढ़ रहा है यह क्या है देखने के लिए लगभग असंभव है
वास्तव में चल रहा है.
तो द्वारा जबरन की काफी चलो कार्यक्रम शीर्ष दाएँ हाथ में एक्स क्लिक करके
यहाँ कोने.
चलो अब स्रोत कोड में वापस जाओ और चीजें धीमी एक छोटा सा.
>> दूसरे शब्दों में, यह अनंत भीतर बल्कि सिर्फ और चाल और से पाश,
कदम है और फिर, विज्ञापन nauseum, चलो अभी भी ताजा है बस कुछ मिसे के लिए
फिर से ले जाने के लिए आगे बढ़ने से पहले.
विशेष रूप से, की तह तक जाने दो यहाँ और बस अनंत पाश की
10 मिसे, कहते हैं, के लिए विराम प्रत्येक यात्रा पर.
चलो अब recompile और फिर से चलाने उछाल चलो.
और अब हम एक और अधिक उचित देख हम देख सकते हैं, जहां कार्यान्वयन,
वृत्त सचमुच पर उछल बाएँ और दाएँ किनारे.