Vẽ các hình cơ bản
Trong bài này, chúng ta sẽ học cách vẽ các hình cơ bản như tam giác, hình vuông, ngũ giác, lục giác và các đa giác khác.
1. Công thức vẽ đa giác đều
Phần tiêu đề “1. Công thức vẽ đa giác đều”Để vẽ một đa giác đều có n cạnh:
- Góc quay = 360 / n
- Số lần lặp = n
# Công thức chungfor i in range(n): t.forward(canh) t.left(360 / n)2. Vẽ tam giác đều
Phần tiêu đề “2. Vẽ tam giác đều”import turtle
t = turtle.Turtle()t.speed(2)
# Tam giác đều có 3 cạnh# Góc quay = 360 / 3 = 120°for i in range(3): t.forward(100) t.left(120)
turtle.done()3. Vẽ hình vuông
Phần tiêu đề “3. Vẽ hình vuông”import turtle
t = turtle.Turtle()t.speed(2)
# Hình vuông có 4 cạnh# Góc quay = 360 / 4 = 90°for i in range(4): t.forward(100) t.left(90)
turtle.done()4. Vẽ ngũ giác đều
Phần tiêu đề “4. Vẽ ngũ giác đều”import turtle
t = turtle.Turtle()t.speed(2)
# Ngũ giác có 5 cạnh# Góc quay = 360 / 5 = 72°for i in range(5): t.forward(100) t.left(72)
turtle.done()5. Vẽ lục giác đều
Phần tiêu đề “5. Vẽ lục giác đều”import turtle
t = turtle.Turtle()t.speed(2)
# Lục giác có 6 cạnh# Góc quay = 360 / 6 = 60°for i in range(6): t.forward(100) t.left(60)
turtle.done()6. Hàm vẽ đa giác tổng quát
Phần tiêu đề “6. Hàm vẽ đa giác tổng quát”import turtle
def ve_da_giac(sides, length): """ Vẽ đa giác đều sides: Số cạnh length: Độ dài cạnh """ angle = 360 / sides for i in range(sides): t.forward(length) t.left(angle)
# Tạo turtlet = turtle.Turtle()t.speed(3)
# Vẽ các đa giác khác nhauve_da_giac(3, 100) # Tam giáct.penup()t.goto(150, 0)t.pendown()
ve_da_giac(5, 80) # Ngũ giáct.penup()t.goto(-150, 0)t.pendown()
ve_da_giac(8, 60) # Bát giác
turtle.done()7. Vẽ hình ngôi sao 5 cánh
Phần tiêu đề “7. Vẽ hình ngôi sao 5 cánh”import turtle
t = turtle.Turtle()t.speed(2)t.color("gold")
# Vẽ ngôi sao 5 cánh# Góc nhọn = 144°for i in range(5): t.forward(100) t.right(144)
turtle.done()Giải thích: Để vẽ ngôi sao 5 cánh, ta quay phải 144° (= 360° / 5 * 2)
8. Vẽ hình ngôi sao 6 cánh
Phần tiêu đề “8. Vẽ hình ngôi sao 6 cánh”import turtle
t = turtle.Turtle()t.speed(2)t.color("blue")
# Vẽ 2 tam giác chồng lên nhau# Tam giác 1for i in range(3): t.forward(100) t.left(120)
# Quay 180° để vẽ tam giác ngượct.right(180)
# Tam giác 2for i in range(3): t.forward(100) t.left(120)
turtle.done()9. Vẽ hình chữ nhật
Phần tiêu đề “9. Vẽ hình chữ nhật”import turtle
t = turtle.Turtle()t.speed(2)
# Chiều dài và chiều rộngwidth = 150height = 80
# Vẽ hình chữ nhậtfor i in range(2): t.forward(width) t.left(90) t.forward(height) t.left(90)
turtle.done()10. Vẽ hình bình hành
Phần tiêu đề “10. Vẽ hình bình hành”import turtle
t = turtle.Turtle()t.speed(2)
# Vẽ hình bình hànhfor i in range(2): t.forward(100) t.left(60) # Góc nghiêng t.forward(100) t.left(120) # 180 - 60
turtle.done()11. Vẽ hình thang
Phần tiêu đề “11. Vẽ hình thang”import turtle
t = turtle.Turtle()t.speed(2)
# Vẽ hình thangt.forward(150) # Đáy lớnt.left(60)t.forward(80) # Cạnh bênt.left(60)t.forward(100) # Đáy nhỏt.left(60)t.forward(80) # Cạnh bên còn lại
turtle.done()12. Vẽ nhiều hình xoay vòng
Phần tiêu đề “12. Vẽ nhiều hình xoay vòng”import turtle
t = turtle.Turtle()t.speed(0)
# Vẽ 36 hình vuông xoay quanh tâmfor i in range(36): # Vẽ hình vuông for j in range(4): t.forward(100) t.left(90)
# Quay 10° để vẽ hình tiếp theo t.left(10)
turtle.done()Ví dụ tổng hợp: Vẽ nhiều hình cùng lúc
Phần tiêu đề “Ví dụ tổng hợp: Vẽ nhiều hình cùng lúc”import turtle
def ve_hinh(sides, size, x, y, color): """Vẽ một đa giác tại vị trí cho trước""" t.penup() t.goto(x, y) t.pendown() t.color(color)
angle = 360 / sides for i in range(sides): t.forward(size) t.left(angle)
# Khởi tạot = turtle.Turtle()t.speed(0)screen = turtle.Screen()screen.bgcolor("lightyellow")
# Vẽ nhiều hìnhve_hinh(3, 80, -200, 100, "red") # Tam giácve_hinh(4, 80, 0, 100, "blue") # Hình vuôngve_hinh(5, 80, 200, 100, "green") # Ngũ giácve_hinh(6, 60, -200, -100, "purple") # Lục giácve_hinh(8, 50, 0, -100, "orange") # Bát giácve_hinh(10, 40, 200, -100, "pink") # Thập giác
t.hideturtle()turtle.done()Bài tập thực hành
Phần tiêu đề “Bài tập thực hành”Bài 1: Vẽ đa giác tăng dần
Phần tiêu đề “Bài 1: Vẽ đa giác tăng dần”Vẽ các đa giác từ tam giác đến thập giác, xếp cạnh nhau
Bài 2: Vẽ kim tự tháp
Phần tiêu đề “Bài 2: Vẽ kim tự tháp”Vẽ một kim tự tháp bằng cách chồng các hình vuông giảm dần
Bài 3: Vẽ hoa văn
Phần tiêu đề “Bài 3: Vẽ hoa văn”Vẽ 12 hình vuông xoay quanh tâm (mỗi lần quay 30°)
Bài 4: Vẽ tổ ong
Phần tiêu đề “Bài 4: Vẽ tổ ong”Vẽ nhiều lục giác ghép lại tạo thành tổ ong
Gợi ý Bài 3:
Phần tiêu đề “Gợi ý Bài 3:”import turtle
t = turtle.Turtle()t.speed(0)t.color("blue")
# Vẽ 12 hình vuôngfor i in range(12): # Vẽ hình vuông for j in range(4): t.forward(100) t.left(90)
# Quay 30° t.left(30)
turtle.done()Bảng công thức góc quay
Phần tiêu đề “Bảng công thức góc quay”| Hình | Số cạnh | Góc quay |
|---|---|---|
| Tam giác đều | 3 | 120° |
| Hình vuông | 4 | 90° |
| Ngũ giác | 5 | 72° |
| Lục giác | 6 | 60° |
| Bát giác | 8 | 45° |
| Thập giác | 10 | 36° |
| Mười hai giác | 12 | 30° |
Công thức: Góc quay = 360° / số cạnh
Tổng kết
Phần tiêu đề “Tổng kết”Trong bài này, bạn đã học:
- ✅ Công thức vẽ đa giác đều: góc quay = 360 / n
- ✅ Vẽ các hình cơ bản: tam giác, hình vuông, ngũ giác, lục giác
- ✅ Vẽ ngôi sao 5 cánh và 6 cánh
- ✅ Vẽ hình chữ nhật, hình bình hành, hình thang
- ✅ Tạo hoa văn bằng cách xoay hình
- ✅ Viết hàm vẽ đa giác tổng quát
Bài tiếp theo, chúng ta sẽ học về màu sắc và tô màu!