دستور circle و متد رسم دایره با لاکپشت
در برنامهنویسی با لاکپشت، دستور circle یکی از کاربردیترین ابزارها برای کشیدن دایره و قوسهای مختلف است. این دستور به لاکپشت میگوید که با حرکت در یک مسیر دایرهوار، شکلی گرد بکشد. با تغییر دادن عددهایی که به این دستور میدهیم، میتوانیم اندازه دایره، جهت آن و حتی اینکه فقط بخشی از یک دایره را رسم کنیم، کنترل کنیم. در این مقاله با نحوهٔ کار با این دستور، تنظیمات مختلف آن و کاربردهایش در خلق طرحهای جذاب آشنا میشویم.
آشنایی با دستور circle و تنظیمات پایهٔ آن
دستور circle در محیط لاکپشت، معمولاً به این شکل نوشته میشود: circle(شعاع). شعاع، عددی است که اندازهٔ دایره را تعیین میکند. برای نمونه، اگر بنویسیم circle(50)، لاکپشت یک دایره با شعاع 50 واحد رسم میکند. جالب اینجاست که اگر عدد شعاع را مثبت بنویسیم، دایره در جهت عقربههای ساعت کشیده میشود و اگر منفی باشد، جهت رسم برعکس میشود. این ویژگی به ما کمک میکند تا شکلهای متنوعی خلق کنیم.
علاوه بر شعاع، این دستور یک ورودی دیگر هم میپذیرد که به آن «زاویه» میگوییم. با نوشتن circle(شعاع، زاویه)، لاکپشت به جای یک دایره کامل، فقط به اندازهٔ زاویهٔ دادهشده، قوس میکشد. زاویه بر حسب درجه است. مثلاً circle(50, 180) یک نیمدایره میسازد و circle(50, 90) یک ربع دایره را رسم میکند. این قابلیت برای طراحی الگوهای هندسی و اشکال تکراری بسیار مفید است.
کاربردهای جذاب circle در طرحهای خلاقانه
با کمی خلاقیت، میتوان از دستور circle برای کشیدن شکلهای بسیار زیبا استفاده کرد. برای مثال، اگر لاکپشت را پس از کشیدن هر دایره، کمی بچرخانیم و دوباره همان دایره را بکشیم، یک طرح گلمانند به دست میآید. این تکنیک در برنامهنویسی به «حلقهٔ تو در تو» معروف است و با ترکیب آن با دستورهای چرخش مانند left یا right، میتوانیم طرحهای شگفتانگیزی خلق کنیم که هر کدام شبیه به یک اثر هنری هستند.
یکی دیگر از کاربردهای جالب، رسم دایرههای توخالی یا توپر با استفاده از تغییر رنگ قلم است. با تغییر رنگ لاکپشت پیش از هر بار استفاده از دستور circle، میتوان دایرههایی با رنگهای متفاوت و هممرکز ساخت که به آن «دایرههای هممرکز» میگویند. این کار در ساخت پرچمها، نشانها و یا حتی شبیهسازی سیارهها در یک بازی ساده کاربرد دارد.
همچنین، با استفاده از شعاعهای مختلف و زاویههای گوناگون، میتوان اشکالی مانند مارپیچ، گلآفتابگردان و یا حتی صورتکهای خندهدار طراحی کرد. به این ترتیب، دستور circle نه تنها یک ابزار ساده برای رسم دایره است، بلکه دریچهای به سوی دنیای بزرگ طراحی با کدنویسی باز میکند.
| مقدار شعاع | مقدار زاویه (درجه) | شکل حاصل |
|---|---|---|
| 100 | 360 | یک دایرهٔ کامل بزرگ |
| -100 | 360 | دایرهٔ کامل با جهت مخالف (پادساعتگرد) |
| 60 | 180 | نیمدایره با شعاع 60 |
| 40 | 90 | ربع دایره با شعاع کوچک |
پرسشهای کلیدی و رفع ابهامهای رایج
پرسش: آیا شعاع همیشه باید عدد صحیح باشد؟
خیر، شعاع میتواند هر عدد اعشاری مانند 2.5 یا 7.3 باشد. لاکپشت با دقت خوبی این اعداد را پردازش میکند و دایرههایی با اندازههای بسیار دقیق رسم میشود. فقط توجه داشته باشید که اگر شعاع خیلی کوچک باشد، دایره ممکن است قابل مشاهده نباشد.
پرسش: فرق بین circle(50) و circle(50, 360) چیست؟
از نظر ظاهری هیچ تفاوتی ندارند، چون هردو یک دایرهٔ کامل رسم میکنند. اما تفاوت در این است که در حالت اول، لاکپشت پس از پایان رسم، به نقطهٔ شروع برمیگردد، درحالیکه در حالت دوم با زاویهٔ 360، لاکپشت در همان نقطهٔ پایان میماند و جهت آن هم تغییری نمیکند.
پرسش: چرا گاهی با نوشتن circle(مثبت) دایره در جهت عقربههای ساعت و با circle(منفی) در خلاف آن کشیده میشود؟
این موضوع به قرارداد محیط برنامهنویسی لاکپشت برمیگردد. در بسیاری از نسخهها، علامت شعاع نشاندهندهٔ جهت حرکت است. عدد مثبت به معنای حرکت ساعتگرد و عدد منفی به معنای حرکت پادساعتگرد است. این ویژگی به ما امکان میدهد تا بدون تغییر مکان لاکپشت، جهت رسم را عوض کنیم.
پرسش: چگونه میتوان یک دایره را با لاکپشت توپر کرد؟
برای توپر کردن دایره، باید از دستور begin_fill() پیش از رسم و end_fill() پس از آن استفاده کنید. با این کار، لاکپشت داخل دایره را با رنگ فعلی پر میکند. این تکنیک در نقاشی با کامپیوتر بسیار کاربرد دارد.
دستور circle یکی از سادهترین و در عین حال قدرتمندترین دستورها در برنامهنویسی لاکپشت است. با درک درست از شعاع، زاویه و جهت، میتوانید از آن برای خلق طرحهای بینهایت استفاده کنید. به یاد داشته باشید که تمرین و آزمایش با اعداد مختلف، بهترین راه برای یادگیری است. هر بار که یک عدد جدید را امتحان میکنید، یک شکل تازه متولد میشود. این دستور به شما نشان میدهد که چگونه ریاضیات و هنر در کنار هم، زیبایی خلق میکنند.