summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustyna Ilczuk <justyna.ilczuk@gmail.com>2013-01-23 10:48:49 +0100
committerJustyna Ilczuk <justyna.ilczuk@gmail.com>2013-01-23 10:48:49 +0100
commitf62f4c1c98a38d85aace62305971705cc603b1ca (patch)
tree0c8f972f98208ba61f47bdb0eee75c01c12066cb
parenta633722cb34341097beae23d667d506d8a751df0 (diff)
downloadRutherford-f62f4c1c98a38d85aace62305971705cc603b1ca.tar.gz
Rutherford-f62f4c1c98a38d85aace62305971705cc603b1ca.tar.bz2
Rutherford-f62f4c1c98a38d85aace62305971705cc603b1ca.zip
Last changes.HEADmaster
-rw-r--r--rutherford.py36
1 files changed, 12 insertions, 24 deletions
diff --git a/rutherford.py b/rutherford.py
index 8adbe1b..f36b37d 100644
--- a/rutherford.py
+++ b/rutherford.py
@@ -13,7 +13,7 @@ RED = (255, 0, 0)
GREEN = (0, 150, 0)
BLUE = (30, 30, 180)
VERYLIGHT = (210, 210, 210)
-BLACK = (0,0,0)
+BLACK = (5,5,5)
WHITE = (255, 255, 255)
PINK = (255, 62, 150)
@@ -26,12 +26,12 @@ ROYALBLUE = (65, 105, 225)
TIME_STEP = 0.01
-K = 50000
+K = 120000
-X_SCREEN_BORDER = 1200
-Y_SCREEN_BORDER = 800
+X_SCREEN_BORDER = 1366
+Y_SCREEN_BORDER = 768
-INITIAL_SPEED_X = 200
+INITIAL_SPEED_X = 300
INITIAL_SPEED_Y = 0
INITIAL_Y = 400
DEFAULT_OLD_X = 2 - INITIAL_SPEED_X*TIME_STEP
@@ -40,7 +40,7 @@ BEAM_WIDHT = 40
def main():
#create the screen
- window = pygame.display.set_mode((1200, 800))
+ window = pygame.display.set_mode((1366, 768), FULLSCREEN)
colors = [GRAY, VIOLET, RED, GREEN, BLUE, ROYALBLUE, BLACK, PINK, ORANGE, GREENYYELLOW, CRIMSON]
settings = SimulationSettings(K, TIME_STEP, INITIAL_Y, INITIAL_SPEED_X, BEAM_WIDHT, colors)
@@ -57,12 +57,13 @@ def main():
universe.update_positions()
else:
screen.draw_static_surface()
-
for event in pygame.event.get():
if event.type == pygame.QUIT:
keep_running = False
elif event.type == pygame.KEYUP:
- if event.key == K_UP :
+ if event.key == K_ESCAPE:
+ keep_running = False
+ elif event.key == K_UP :
universe.settings.initial_y -= 10
elif event.key == K_DOWN:
universe.settings.initial_y += 10
@@ -91,12 +92,7 @@ def main():
elif event.key == K_PERIOD:
universe.settings.beam_width += 5
-
-
- print "Pygame thread exited."
-
-
-
+ print "Symulation is over."
class Screen:
def __init__(self, window, colors, universe):
@@ -147,8 +143,6 @@ class Screen:
for x in range(0, 79, 2):
pygame.draw.aaline(self.window, RED, (X_SCREEN_BORDER*x/80, y - offset), (X_SCREEN_BORDER*(x+1)/80, y - offset), 2)
-
-
def draw_static_surface(self):
self.window.fill(GRAYISH)
self.draw_static_universe()
@@ -182,7 +176,6 @@ class Screen:
description.append(line)
return description
-
def draw_surface(self):
self.window.fill(self.color)
self.draw_universe()
@@ -205,14 +198,12 @@ class Screen:
ren = font.render(text,1,color)
screen.blit(ren, (xx,yy))
-
class Vector2:
def __init__(self, x, y):
self.x = x
self.y = y
-
class Particle:
def __init__(self, mass, position, old_position, charge, color):
self.mass = mass
@@ -242,7 +233,7 @@ class SimulationSettings:
class Universe:
def __init__(self, settings):
self.settings = settings
- atom1 = Particle(1000, Vector2(600,400), Vector2(600,400), 20, BLUE)
+ atom1 = Particle(1000, Vector2(700,400), Vector2(700,400), 20, ORANGE)
atom2 = Particle(1, Vector2(2,400), Vector2(2-TIME_STEP*INITIAL_SPEED_X,
INITIAL_Y- TIME_STEP*INITIAL_SPEED_Y), 1, RED)
@@ -301,8 +292,5 @@ class Universe:
Vector2(2-self.settings.time_step*speed, y + random_offset), 1, random.choice(colors))
self.particles.append(particle)
-
-
-
if __name__ == '__main__':
- main() \ No newline at end of file
+ main()