در پایتون، گرافیک های لاک پشتی رویکردی با سابقه طولانی هستند. در این مقاله، یک برنامه پیشرفته برای ایجاد گرافیک های لاک پشتی با زبان برنامه نویسی پایتون را بررسی خواهم کرد. اگر با ماژول turtle آشنایی زیادی ندارید، میتوانید از اینجا با یک پروژه سطح مبتدی شروع کنید.
معرفی گرافیک های لاک پشتی با پایتون
در ابتدا، لاک پشت تنها یک شیء فیزیکی بود، شبیه به یک ربات که میتوانست روی یک ورق کاغذ قرار گیرد و به آن دستور حرکت داده شود. سپس، لاک پشت به یک نمایش تصویری روی یک صفحهنمایش با وضوح بالا تبدیل شد و اغلب به شکلهای مختلفی نمایش داده میشد.
حتی در قالب کاملاً گرافیکی، مفهوم لاک پشت میتواند درک اقدامات انجامشده و در نتیجه عملکرد یک برنامه را آسان تر کند.
دوره برنامه نویسی : آموزش طراحی سایت با پایتون
ماژول turtle محیطی را فراهم میکند که در آن لاک پشت ها روی یک شبکه دوبعدی حرکت میکنند. لاک پشتها موقعیت، جهت (جهتی که لاکپشت به آن نگاه میکند) و حالت های مختلفی دارند (میتوانند هنگام حرکت خطوطی با رنگ خاص بکشند یا هیچ اثری باقی نگذارند) و همچنین اقداماتی مانند چرخیدن به چپ یا راست و حرکت به جلو یا عقب را انجام دهند.
یک شیء لاک پشت دارای متدهای زیادی است که میتوان آنها را در دستهبندی های مختلف گروه بندی کرد. میتوانید اطلاعات بیشتری در مورد متدهای ماژول turtle در پایتون از طریق مستندات رسمی کسب کنید. حالا بیایید شما را با یک پروژه پیشرفته درباره گرافیکهای لاک پشتی با زبان برنامه نویسی پایتون آشنا کنم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 |
import turtle as tu roo = tu.Turtle() # Turtle object wn = tu.Screen() # Screen Object wn.bgcolor("black") # Screen Bg color wn.title("Fractal Tree Pattern") roo.left(90) # moving the turtle 90 degrees towards left roo.speed(20) # setting the speed of the turtle def draw(l): # recursive function taking length 'l' as argument if (l < 10): return else: roo.pensize(2) # Setting Pensize roo.pencolor("yellow") # Setting Pencolor as yellow roo.forward(l) # moving turtle forward by 'l' roo.left(30) # moving the turtle 30 degrees towards left draw(3 * l / 4) # drawing a fractal on the left of the turtle object 'roo' with 3/4th of its length roo.right(60) # moving the turtle 60 degrees towards right draw(3 * l / 4) # drawing a fractal on the right of the turtle object 'roo' with 3/4th of its length roo.left(30) # moving the turtle 30 degrees towards left roo.pensize(2) roo.backward(l) # returning the turtle back to its original psition draw(20) # drawing 20 times roo.right(90) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor("magenta") # magenta roo.forward(l) roo.left(30) draw(3 * l / 4) roo.right(60) draw(3 * l / 4) roo.left(30) roo.pensize(2) roo.backward(l) draw(20) roo.left(270) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor("red") # red roo.forward(l) roo.left(30) draw(3 * l / 4) roo.right(60) draw(3 * l / 4) roo.left(30) roo.pensize(2) roo.backward(l) draw(20) roo.right(90) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor('#FFF8DC') # white roo.forward(l) roo.left(30) draw(3 * l / 4) roo.right(60) draw(3 * l / 4) roo.left(30) roo.pensize(2) roo.backward(l) draw(20) ######################################################## def draw(l): if (l < 10): return else: roo.pensize(3) roo.pencolor("lightgreen") # lightgreen roo.forward(l) roo.left(30) draw(4 * l / 5) roo.right(60) draw(4 * l / 5) roo.left(30) roo.pensize(3) roo.backward(l) draw(40) roo.right(90) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(3) roo.pencolor("red") # red roo.forward(l) roo.left(30) draw(4 * l / 5) roo.right(60) draw(4 * l / 5) roo.left(30) roo.pensize(3) roo.backward(l) draw(40) roo.left(270) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(3) roo.pencolor("yellow") # yellow roo.forward(l) roo.left(30) draw(4 * l / 5) roo.right(60) draw(4 * l / 5) roo.left(30) roo.pensize(3) roo.backward(l) draw(40) roo.right(90) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(3) roo.pencolor('#FFF8DC') # white roo.forward(l) roo.left(30) draw(4 * l / 5) roo.right(60) draw(4 * l / 5) roo.left(30) roo.pensize(3) roo.backward(l) draw(40) ######################################################## def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor("cyan") # cyan roo.forward(l) roo.left(30) draw(6 * l / 7) roo.right(60) draw(6 * l / 7) roo.left(30) roo.pensize(2) roo.backward(l) draw(60) roo.right(90) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor("yellow") # yellow roo.forward(l) roo.left(30) draw(6 * l / 7) roo.right(60) draw(6 * l / 7) roo.left(30) roo.pensize(2) roo.backward(l) draw(60) roo.left(270) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor("magenta") # magenta roo.forward(l) roo.left(30) draw(6 * l / 7) roo.right(60) draw(6 * l / 7) roo.left(30) roo.pensize(2) roo.backward(l) draw(60) roo.right(90) roo.speed(2000) # recursion def draw(l): if (l < 10): return else: roo.pensize(2) roo.pencolor('#FFF8DC') # white roo.forward(l) roo.left(30) draw(6 * l / 7) roo.right(60) draw(6 * l / 7) roo.left(30) roo.pensize(2) roo.backward(l) draw(60) wn.exitonclick() |
امیدوارم از این مقاله درباره ایجاد گرافیک با زبان برنامه نویسی پایتون لذت برده باشید. لطفاً سوالات ارزشمند خود را در بخش نظرات زیر با ما به اشتراک بگذارید.
سورس بازی با پایتون
- سورس چاپ رنگی متن با پایتون
- سورس ساعت دیجیتال با پایتون
- سورس دریافت تصاویر زنده از دوربین تلفن همراه در پایتون
- سورس اختصاری کردن کلمات در پایتون
- سورس ساخت داستان تصادفی در پایتون
- سورس ساخت پسورد تصادفی در پایتون
- سورس ماشین حساب BMI با پایتون
- سورس دریافت چند ورودی با حلقه while در پایتون
- سورس نمایش نوتیفیکیشن در دسکتاپ با پایتون
- سورس استخراج متن از ویدیو با پایتون
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.
- انتشار: ۴ بهمن ۱۴۰۳
دسته بندی موضوعات
- آموزش ارز دیجیتال
- آموزش برنامه نویسی
- آموزش متنی برنامه نویسی
- اطلاعیه و سایر مطالب
- پروژه برنامه نویسی
- رپورتاژ
- فروشگاه
- فیلم های آموزشی
- ++C
- ADO.NET
- Adobe Flash
- Ajax
- AngularJS
- apache
- ARM
- Asp.Net
- ASP.NET MVC
- AVR
- Bootstrap
- CCNA
- CCNP
- CMD
- CSS
- Dreameaver
- EntityFramework
- Go
- HTML
- IOS
- jquery
- Linq
- Mysql
- Oracle
- PHP
- PHPMyAdmin
- Rational Rose
- silver light
- SQL Server
- Stimulsoft Reports
- Telerik
- UML
- VB.NET&VB6
- WPF
- Xml
- آموزش های پروژه محور
- اتوکد
- الگوریتم تقریبی
- امنیت
- اندروید
- اندروید استودیو
- بک ترک
- بیسیک فور اندروید
- پایتون
- جاوا
- جاوا اسکریپت
- جوملا
- دلفی
- دوره های برنامه نویسی پیشنهادی
- زامارین
- سئو
- ساخت CMS
- سی شارپ
- شبکه و مجازی سازی
- طراحی الگوریتم
- طراحی بازی
- طراحی وب
- فتوشاپ
- فریم ورک codeigniter
- فلاتر
- کانستراکت
- کریستال ریپورت
- لاراول
- معماری کامپیوتر
- مهندسی اینترنت
- هوش مصنوعی
- یونیتی
- کتاب های آموزشی
- Android
- ASP.NET
- AVR
- LINQ
- php
- Workflow
- اچ تی ام ال
- بانک اطلاعاتی
- برنامه نویسی سوکت
- برنامه نویسی موبایل
- پاسکال
- پایان نامه
- پایتون
- جاوا
- جاوا اسکریپت
- جی کوئری
- داده کاوی
- دلفی
- رباتیک
- سئو
- سایر کتاب ها
- سخت افزار
- سی اس اس
- سی پلاس پلاس
- سی شارپ
- طراحی الگوریتم
- فتوشاپ
- مقاله
- مهندسی نرم افزار
- هک و امنیت
- هوش مصنوعی
- ویژوال بیسیک
- نرم افزار و ابزار برنامه نویسی
- وردپرس