course_planning:code-testing

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
course_planning:code-testing [2024/01/19 13:36] caballerocourse_planning:code-testing [2024/01/19 13:44] (current) caballero
Line 40: Line 40:
  
 dt = 0.3 dt = 0.3
 +while True:
 +    rate(200)
 +    ball.pos = ball.pos + (ball.p/ball.mass)*dt
 +    if not (side > ball.pos.x > -side):
 +        ball.p.x = -ball.p.x
 +    if not (side > ball.pos.y > -side):
 +        ball.p.y = -ball.p.y
 +    if not (side > ball.pos.z > -side):
 +        ball.p.z = -ball.p.z
 +</code>
 +
 +
 +## With Line Numbers and Highlighting
 +
 +### Syntax
 +
 +```
 +<code python [enable_line_numbers="true", highlight_lines_extra="ARRAY_OF_LINE_NUMBERS"]>
 +{YOUR CODE}
 +</code>
 +```
 +
 +### Example
 +
 +<code python [enable_line_numbers="true", highlight_lines_extra="27,29"]>
 +Web VPython 3.2
 +
 +scene.caption = """To rotate "camera", drag with right button or Ctrl-drag.
 +To zoom, drag with middle button or Alt/Option depressed, or use scroll wheel.
 +  On a two-button mouse, middle is left + right.
 +To pan left/right and up/down, Shift-drag.
 +Touch screen: pinch/extend to zoom, swipe or two-finger rotate."""
 +
 +side = 4.0
 +thk = 0.3
 +s2 = 2*side - thk
 +s3 = 2*side + thk
 +
 +wallR = box (pos=vector( side, 0, 0), size=vector(thk, s2, s3),  color = color.red)
 +wallL = box (pos=vector(-side, 0, 0), size=vector(thk, s2, s3),  color = color.red)
 +wallB = box (pos=vector(0, -side, 0), size=vector(s3, thk, s3),  color = color.blue)
 +wallT = box (pos=vector(0,  side, 0), size=vector(s3, thk, s3),  color = color.blue)
 +wallBK = box(pos=vector(0, 0, -side), size=vector(s2, s2, thk), color = color.gray(0.7))
 +
 +ball = sphere (color = color.green, radius = 0.4, make_trail=True, retain=200)
 +ball.mass = 1.0
 +ball.p = vector (-0.15, -0.23, +0.27)
 +
 +side = side - thk*0.5 - ball.radius
 +
 +dt = 0.3
 +while True:
 +    rate(200)
 +    ball.pos = ball.pos + (ball.p/ball.mass)*dt
 +    if not (side > ball.pos.x > -side):
 +        ball.p.x = -ball.p.x
 +    if not (side > ball.pos.y > -side):
 +        ball.p.y = -ball.p.y
 +    if not (side > ball.pos.z > -side):
 +        ball.p.z = -ball.p.z
 +</code>
 +
 +
 +## With Line Numbers, Highlighting, Title, and ReNumbering
 +
 +### Syntax
 +
 +```
 +<code python [enable_line_numbers="true", highlight_lines_extra="ARRAY_OF_LINE_NUMBERS", start_line_numbers_at="NUMBER"] | TITLE>
 +{YOUR CODE}
 +</code>
 +```
 +
 +**Note: Highlighting lines uses an absolute number (i.e., the given number of lines sets the length and order starting from 1).**
 +
 +### Example
 +
 +<code python [enable_line_numbers="true", highlight_lines_extra="4,6,8", start_line_numbers_at="27"] | Focusing on the Loop >
 while True: while True:
     rate(200)     rate(200)
  • course_planning/code-testing.1705671405.txt.gz
  • Last modified: 2024/01/19 13:36
  • by caballero