Untitled
unknown
python
a year ago
2.1 kB
6
Indexable
import cv2 import numpy as np import time def draw_zigzag_and_circles(canvas, circle_color, line_color, num_zigzags): x = np.linspace(50, 650, num=num_zigzags, endpoint=True) y = np.linspace(650, 50, num=num_zigzags, endpoint=True) koordinat_x = [[50, int(a)] for a in x] koordinat_y = [[650, int(a)] for a in x] # Çizgileri ve daireleri çiz for i in koordinat_x: cv2.circle(canvas, (int(i[0]), int(i[1])), 16, circle_color, thickness=-1) for i in koordinat_y: cv2.circle(canvas, (int(i[0]), int(i[1])), 16, circle_color, thickness=-1) for i in range(len(koordinat_y)): cv2.line(canvas, koordinat_x[i], koordinat_y[i], line_color, 2) for i in range(len(koordinat_x) - 1): cv2.line(canvas, koordinat_y[i], koordinat_x[i + 1], line_color, 2) return koordinat_x, koordinat_y def blink_circles(canvas, koordinat_x, koordinat_y, blink_color, blink_duration, total_duration): points = [] for i in range(len(koordinat_x)): points.append(koordinat_x[i]) points.append(koordinat_y[i]) end_time = time.time() + total_duration while time.time() < end_time: for point in points: temp_canvas = canvas.copy() cv2.circle(temp_canvas, point, 15, blink_color, thickness=-1) cv2.imshow("Zigzag and Circles", temp_canvas) cv2.waitKey(1) time.sleep(blink_duration) cv2.imshow("Zigzag and Circles", canvas) cv2.waitKey(1) time.sleep(blink_duration) def draw_zıkzak(): canvas = np.ones((800, 700, 3), dtype=np.uint8) * 255 circle_color = (190, 190, 190) line_color = (180, 180,180) blink_color = (130, 90, 90) num_zigzags = 5 blink_duration = 0.4 total_duration = 8 koordinat_x, koordinat_y = draw_zigzag_and_circles(canvas, circle_color, line_color, num_zigzags) blink_circles(canvas, koordinat_x, koordinat_y, blink_color, blink_duration, total_duration) cv2.destroyAllWindows() draw_zıkzak()
Editor is loading...
Leave a Comment