Untitled
unknown
plain_text
a year ago
1.8 kB
10
Indexable
import cv2 import numpy as np import time import random def acilan_nesne_yatay(n, v, t): # Parametre sınırlarını kontrol et n = max(4, min(n, 12)) # Nesne adedi (4 ile 12 arasında) t = max(60, min(t, 5 * 60)) # Programın çalışma süresi (saniye cinsinden, 1 dakika ile 5 dakika arasında) v = max(1, min(v, 3)) # Hız seviyesi (1 ile 3 arasında) hiz = 1500 // (2 ** (v - 1)) # Hız milisaniye cinsinden hesaplanır # Nesne renkleri ve boyutları nesne_renkler = [(255, 0, 0), (0, 255, 0), (0, 0, 255), (0, 255, 255), (255, 0, 255), (255, 255, 0), (100, 100, 255), (255, 100, 100), (100, 255, 100), (200, 200, 100), (100, 200, 200), (200, 100, 200)] nesne_boyutu = 30 nesne_aralik = 60 # Nesneler arasındaki yatay boşluk # Tuval boyutu canvas_width = 700 canvas_height = 700 canvas_center_y = canvas_height // 2 start_time = time.time() while time.time() - start_time < t: random_indices = random.sample(range(len(nesne_renkler)), n) for i in range(1, n + 1): # 1'den n'e kadar sırayla nesneleri göster canvas = np.ones((canvas_height, canvas_width, 3), dtype="uint8") * 255 # Nesne pozisyonlarını sol taraftan sağa doğru ayarla nesne_positions = [(nesne_aralik * (j + 1), canvas_center_y) for j in range(i)] for k, pos in enumerate(nesne_positions): color = nesne_renkler[random_indices[k]] cv2.circle(canvas, pos, nesne_boyutu, color, -1) cv2.imshow("Nesne Takibi", canvas) if cv2.waitKey(hiz) & 0xFF == ord('q'): cv2.destroyAllWindows() return cv2.destroyAllWindows() # Fonksiyonu çağıralım acilan_nesne_yatay(n=6, v=1, t=60)
Editor is loading...
Leave a Comment