Classes/sensor.py

34 lines
1.4 KiB
Python

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