Professional Documents
Culture Documents
print("KELOMPOK = 9")
import pygame
import math
import time
pygame.init()
class bob(object):
def __init__(self,point):
self.x = point[0]
self.y = point[1]
def draw(self,bg):
pygame.draw.rect(bg,(0,0,0), [0,0,1000,10])
pygame.draw.circle(bg,(0,0,0),[(lebar/2),10],10)
pygame.draw.lines(bg,(0,0,0),False,[(lebar/2,20),(self.x,self.y + 19)],2)
pygame.draw.circle(bg,(0,0,0),(self.x,self.y + 19),23)
pygame.draw.circle(bg,(255,0,0),(self.x,self.y + 19),20)
def move_bob():
def length_px():
length = math.sqrt(math.pow(lebar/2-bandul.x,2)+math.pow(bandul.y,2))
return (length)
def angle_tali():
angle = math.asin((bandul.x-lebar/2)/length)
return (angle)
def sudut():
suduttali = round((angle*180/math.pi),2)
return (suduttali)
def length_m():
tali = round((length*0.00189775036),2)
return (tali)
def nilaiperiode():
periode = round(2*3.14*math.sqrt(tali/9.8),2)
return (periode)
def nilaifrekuensi():
frekuensi = round((1/periode),3)
return (frekuensi)
def refresh():
layar.blit(background,(0,0))
bandul.draw(layar)
layar.blit(cetakpanjang,[100,440])
layar.blit(cetakperiode,[100,470])
layar.blit(cetakfrekuensi,[100,500])
layar.blit(cetaksudut,[100,410])
pygame.display.update()
move = False
closed = False
clock = pygame.time.Clock()
black = (0,0,0)
layar = pygame.display.set_mode((lebar,tinggi))
background = pygame.image.load('bg1.jpeg')
font1 = pygame.font.Font(None,30)
bandul = bob((lebar/2,150))
tali = round(130*0.00189775036,3)
periode = 0
frekuensi = 0
suduttali = 0
clock.tick(120)
if event.type == pygame.QUIT:
closed = True
if event.type == pygame.MOUSEBUTTONDOWN:
move = False
bandul = bob(pygame.mouse.get_pos())
length = length_px()
angle = angle_tali()
suduttali = sudut()
tali = length_m()
periode = '-'
frekuensi = '-'
start_time = time.time()
xx,yy = pygame.mouse.get_pos()
hl = math.sqrt(((xx-bandul.x)/length)**2+((yy-bandul.y)/length)**2)+0.01
vel = math.asin(((xx-bandul.x)/hl)*(hl/(matime*10000+1)))
move = True
periode = nilaiperiode()
frekuensi = nilaifrekuensi()
pygame.display.update()
if move:
vel += acc
vel *= 0.9997
angle += vel
move_bob()
refresh()
pygame.quit()