Skip to content
Snippets Groups Projects
Select Git revision
  • 48ce515dc09c8c6576be07a02aeee04b428a542b
  • develop default
  • master
3 results

runserver.py

Blame
  • Forked from Hodor Security Project / Hodor Web Backend
    Source project has a limited visibility.
    cb.en.u4cse16249_wallAndBall.py 1.42 KiB
    from vpython import *
    #GlowScript 2.7 VPython
    ball = sphere(pos=vector(-5,0,0),radius=1,color=color.red,make_trail=True)
    wall = box(pos=vector(6,0,0),size=vector(0.2,12,12),color=color.green)
    wallL= box(pos=vector(-6,0,0),size=vector(0.2,12,12),color=color.green)
    wall1 =box(pos=vector(0,6,0),size=vector(-12,0,12),color=color.green)
    wall2 =box(pos=vector(0,-6,0),size=vector(-12,0,12),color=color.green)
    vscale=0.1
    ball.velocity=vector(25,3,0)
    varr=arrow(pos=ball.pos,axis=vscale*ball.velocity,color=color.yellow)
    delta=0.005
    t=0
    while(t>=0):
        rate(100)
        if(ball.pos.y>wall1.pos.y):
            ball.color=color.white
            ball.velocity.x=-ball.velocity.x
            ball.velocity.y=-ball.velocity.y
            varr.axis=ball.velocity*vscale
            ball.pos=ball.pos+(ball.velocity*(delta))
            varr.pos=varr.pos+(ball.velocity*(delta))
            t=t+delta
        if(ball.pos.x==wall.pos.x):
            ball.velocity.x=-ball.velocity.x
            varr.axis=ball.velocity*vscale
            ball.pos=ball.pos+(ball.velocity*(delta))
            varr.pos=varr.pos+(ball.velocity*(delta))
            t=t+delta
        else if(ball.pos.x==wallL.pos.x):
            ball.velocity.x=-ball.velocity.x
            varr.axis=ball.velocity*vscale
            ball.pos=ball.pos+(ball.velocity*(delta))
            varr.pos=varr.pos+(ball.velocity*(delta))
            t=t+delta
        else:
            ball.pos=ball.pos+ball.velocity*delta
            varr.pos=varr.pos+(ball.velocity*(delta))
            t=t+delta