Friday, 2 October 2026

๐ŸŒ€ Python Turtle The Twisted Rainbow Illusion

 



Code:

import turtle import math import time screen = turtle.Screen() screen.setup(700, 700) screen.bgcolor("#000000") t = turtle.Turtle() t.hideturtle() t.speed(0) t.width(1) colors = [ "#ff1744", "#ffea00", "#00ff9d", "#00e5ff", "#2979ff", "#d500f9" ] # Draw many twisted ellipses for i in range(75): t.color(colors[i % len(colors)]) points = 120 phase = i * 0.055 for j in range(points + 1): a = math.radians(j * 360 / points) # Twisted oval x = 260 * math.cos(a) y = 125 * math.sin(a + phase) # Slight rotation rot = math.radians(i * 2.2) X = x * math.cos(rot) - y * math.sin(rot) Y = x * math.sin(rot) + y * math.cos(rot) if j == 0: t.penup() t.goto(X, Y) t.pendown() else: t.goto(X, Y) screen.update() time.sleep(0.035) # Dark center t.penup() t.goto(0, -55) t.dot(105, "#000000") screen.update() time.sleep(1) turtle.done()





















Explanation:

1. Import Libraries
import turtle
import math
import time
turtle → Used for drawing.
math → Used for trigonometric calculations.
time → Controls animation speed.

2. Create the Screen
screen = turtle.Screen()
screen.setup(700, 700)
screen.bgcolor("#000000")
Creates a 700 × 700 canvas.
Sets a black background.

3. Configure the Turtle
t = turtle.Turtle()
t.hideturtle()
t.speed(0)
t.width(1)
Creates the turtle.
Hides the cursor.
Sets maximum drawing speed.
Uses a thin line.

4. Define Neon Colors
colors = [
    "#ff1744", "#ffea00",
    "#00ff9d", "#00e5ff",
    "#2979ff", "#d500f9"
]
Stores six bright neon colors.
Colors are reused for different ellipses.

5. Create Multiple Ellipses
for i in range(75):
Creates 75 twisted ellipse layers.

6. Select the Color
t.color(colors[i % len(colors)])
Cycles through the neon colors.
Each ellipse gets a different color.

7. Set Curve Parameters
points = 120
phase = i * 0.055
Uses 120 points for a smooth ellipse.
phase changes the shape of every layer slightly.

8. Generate Ellipse Points
for j in range(points + 1):
Loops through all points of the ellipse.
+1 helps close the curve.

9. Calculate the Angle
a = math.radians(j * 360 / points)
Divides the full 360° circle into 120 sections.
Converts the angle to radians.

10. Calculate the Oval Coordinates
x = 260 * math.cos(a)
y = 125 * math.sin(a + phase)
Calculates the X coordinate using cosine.
Calculates the Y coordinate using sine.
Different X/Y sizes create an oval.
phase creates the twisting effect.

11. Calculate Rotation
rot = math.radians(i * 2.2)
Rotates each ellipse slightly.
Every new layer gets an additional 2.2° rotation.
12. Rotate the X Coordinate
X = x * math.cos(rot) - y * math.sin(rot)
Applies a rotation transformation to the X position.

13. Rotate the Y Coordinate
Y = x * math.sin(rot) + y * math.cos(rot)
Applies the same rotation to the Y position.
Together, X and Y create the rotated ellipse.

14. Start Drawing the Ellipse
if j == 0:
    t.penup()
    t.goto(X, Y)
    t.pendown()
Moves to the first point without drawing.
Starts drawing from that point.

15. Connect the Points
else:
    t.goto(X, Y)
Connects all calculated points.
Forms the smooth twisted ellipse.

16. Animate Each Layer
screen.update()
time.sleep(0.035)
Updates the screen.
Adds a short delay between layers.

17. Create the Dark Center
t.penup()
t.goto(0, -55)
t.dot(105, "#000000")
Moves to the center.
Draws a large black circle.
Creates a dark central hole.

18. Display the Final Design
screen.update()
time.sleep(1)
Updates the final frame.
Keeps the design visible for one second.

19. Finish
turtle.done()
Keeps the Turtle window open.
Ends the program.


0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (119) AI (346) Android (25) AngularJS (1) Api (7) Assembly Language (2) aws (31) Azure (12) BI (10) book (1) Books (359) Bootcamp (15) C (78) C# (12) C++ (83) cloud (1) Course (93) Coursera (305) Cybersecurity (36) data (10) Data Analysis (47) Data Analytics (31) data management (16) Data Science (435) Data Strucures (19) Deep Learning (222) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (9) Excel (24) Finance (13) flask (4) flutter (1) FPL (17) Generative AI (78) Git (13) Google (55) Hadoop (3) HTML Quiz (1) HTML&CSS (48) IBM (43) IoT (3) IS (25) Java (99) Leet Code (4) Machine Learning (407) Meta (24) MICHIGAN (5) microsoft (13) Nvidia (8) Pandas (16) PHP (20) Projects (35) Python (1377) Python Coding Challenge (1265) Python Library (18) Python Mathematics (19) Python Mistakes (51) Python Pattern Challenge (16) Python Quiz (648) Python Tips (112) Questions (3) R (72) React (7) Scripting (3) security (4) Selenium Webdriver (4) Software (21) SQL (55) Udemy (22) UX Research (1) web application (11) Web development (9) web scraping (3)

Followers

Python Coding for Kids ( Free Demo for Everyone)