import pygame class Sensor: def __init__(self, width, distance, space): self.width = width self.distance = distance self.space = space def generate(self, screenWidth, screenHeight, screen): self.sensor1_x = (screenWidth / 2) - (self.space / 2) self.sensor1_y = 0 self.sensor1_x_size = self.width self.sensor1_y_size = (screenHeight / 2) - (self.distance / 2) self.inner1 = self.sensor1_x self.outer1 = self.inner1 + self.width sensor1a = pygame.Rect(self.sensor1_x, self.sensor1_y, self.sensor1_x_size, self.sensor1_y_size) sensor1b = pygame.Rect(self.sensor1_x, self.sensor1_y + self.sensor1_y_size + self.distance, self.sensor1_x_size, self.sensor1_y_size) pygame.draw.rect(screen, (0, 0, 255), sensor1a) pygame.draw.rect(screen, (0, 0, 255), sensor1b) def testSensor1(self, partCenter, particle): if particle.size >= abs(self.inner1 - (partCenter - particle.size)): volume = particle.partialVol(particle.size - (self.inner1 - (partCenter - particle.size))) return volume elif particle.size >= abs(self.outer1 - (partCenter - particle.size)): volume = particle.volume - particle.partialVol(particle.size - (self.outer1 - (partCenter - particle.size))) return volume elif ((partCenter - particle.size) >= self.inner1 and (partCenter - particle.size) <= self.outer1): volume = particle.volume return volume else: return 0