GRAYBYTE WORDPRESS FILE MANAGER1701

Server IP : 198.54.121.189 / Your IP : 216.73.216.140
System : Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
PHP Version : 7.4.33
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /usr/lib64/python2.7/Demo/turtle/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /usr/lib64/python2.7/Demo/turtle//tdemo_planet_and_moon.py
#! /usr/bin/python2.7
"""       turtle-example-suite:

        tdemo_planets_and_moon.py

Gravitational system simulation using the
approximation method from Feynman-lectures,
p.9-8, using turtlegraphics.

Example: heavy central body, light planet,
very light moon!
Planet has a circular orbit, moon a stable
orbit around the planet.

You can hold the movement temporarily by
pressing the left mouse button with the
mouse over the scrollbar of the canvas.

"""
from turtle import Shape, Turtle, mainloop, Vec2D as Vec
from time import sleep

G = 8

class GravSys(object):
    def __init__(self):
        self.planets = []
        self.t = 0
        self.dt = 0.01
    def init(self):
        for p in self.planets:
            p.init()
    def start(self):
        for i in range(10000):
            self.t += self.dt
            for p in self.planets:
                p.step()

class Star(Turtle):
    def __init__(self, m, x, v, gravSys, shape):
        Turtle.__init__(self, shape=shape)
        self.penup()
        self.m = m
        self.setpos(x)
        self.v = v
        gravSys.planets.append(self)
        self.gravSys = gravSys
        self.resizemode("user")
        self.pendown()
    def init(self):
        dt = self.gravSys.dt
        self.a = self.acc()
        self.v = self.v + 0.5*dt*self.a
    def acc(self):
        a = Vec(0,0)
        for planet in self.gravSys.planets:
            if planet != self:
                v = planet.pos()-self.pos()
                a += (G*planet.m/abs(v)**3)*v
        return a
    def step(self):
        dt = self.gravSys.dt
        self.setpos(self.pos() + dt*self.v)
        if self.gravSys.planets.index(self) != 0:
            self.setheading(self.towards(self.gravSys.planets[0]))
        self.a = self.acc()
        self.v = self.v + dt*self.a

## create compound yellow/blue turtleshape for planets

def main():
    s = Turtle()
    s.reset()
    s.tracer(0,0)
    s.ht()
    s.pu()
    s.fd(6)
    s.lt(90)
    s.begin_poly()
    s.circle(6, 180)
    s.end_poly()
    m1 = s.get_poly()
    s.begin_poly()
    s.circle(6,180)
    s.end_poly()
    m2 = s.get_poly()

    planetshape = Shape("compound")
    planetshape.addcomponent(m1,"orange")
    planetshape.addcomponent(m2,"blue")
    s.getscreen().register_shape("planet", planetshape)
    s.tracer(1,0)

    ## setup gravitational system
    gs = GravSys()
    sun = Star(1000000, Vec(0,0), Vec(0,-2.5), gs, "circle")
    sun.color("yellow")
    sun.shapesize(1.8)
    sun.pu()
    earth = Star(12500, Vec(210,0), Vec(0,195), gs, "planet")
    earth.pencolor("green")
    earth.shapesize(0.8)
    moon = Star(1, Vec(220,0), Vec(0,295), gs, "planet")
    moon.pencolor("blue")
    moon.shapesize(0.5)
    gs.init()
    gs.start()
    return "Done!"

if __name__ == '__main__':
    main()
    mainloop()

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
June 15 2024 08:34:37
root / root
0755
about_turtle.txt
3.442 KB
April 19 2020 21:13:39
root / root
0644
about_turtledemo.txt
0.295 KB
April 19 2020 21:13:39
root / root
0644
demohelp.txt
2.963 KB
April 19 2020 21:13:39
root / root
0644
tdemo_I_dontlike_tiltdemo.py
1.048 KB
April 10 2024 04:57:37
root / root
0755
tdemo_I_dontlike_tiltdemo.pyc
1.621 KB
April 10 2024 04:58:47
root / root
0644
tdemo_I_dontlike_tiltdemo.pyo
1.621 KB
April 10 2024 04:58:47
root / root
0644
tdemo_bytedesign.py
4.119 KB
April 10 2024 04:57:37
root / root
0755
tdemo_bytedesign.pyc
5.188 KB
April 10 2024 04:58:47
root / root
0644
tdemo_bytedesign.pyo
5.188 KB
April 10 2024 04:58:47
root / root
0644
tdemo_chaos.py
0.929 KB
April 19 2020 21:13:39
root / root
0644
tdemo_chaos.pyc
2.242 KB
April 10 2024 04:58:47
root / root
0644
tdemo_chaos.pyo
2.242 KB
April 10 2024 04:58:47
root / root
0644
tdemo_clock.py
3.144 KB
April 10 2024 04:57:37
root / root
0755
tdemo_clock.pyc
4.429 KB
April 10 2024 04:58:47
root / root
0644
tdemo_clock.pyo
4.429 KB
April 10 2024 04:58:47
root / root
0644
tdemo_colormixer.py
1.307 KB
April 19 2020 21:13:39
root / root
0644
tdemo_colormixer.pyc
2.31 KB
April 10 2024 04:58:47
root / root
0644
tdemo_colormixer.pyo
2.31 KB
April 10 2024 04:58:47
root / root
0644
tdemo_fractalcurves.py
3.329 KB
April 10 2024 04:57:37
root / root
0755
tdemo_fractalcurves.pyc
3.441 KB
April 10 2024 04:58:47
root / root
0644
tdemo_fractalcurves.pyo
3.441 KB
April 10 2024 04:58:47
root / root
0644
tdemo_lindenmayer_indian.py
2.375 KB
April 10 2024 04:57:37
root / root
0755
tdemo_lindenmayer_indian.pyc
3.518 KB
April 10 2024 04:58:47
root / root
0644
tdemo_lindenmayer_indian.pyo
3.518 KB
April 10 2024 04:58:47
root / root
0644
tdemo_minimal_hanoi.py
2.001 KB
April 10 2024 04:57:37
root / root
0755
tdemo_minimal_hanoi.pyc
3.538 KB
April 10 2024 04:58:47
root / root
0644
tdemo_minimal_hanoi.pyo
3.538 KB
April 10 2024 04:58:47
root / root
0644
tdemo_nim.py
6.361 KB
April 19 2020 21:13:39
root / root
0644
tdemo_nim.pyc
9.164 KB
April 10 2024 04:58:47
root / root
0644
tdemo_nim.pyo
9.164 KB
April 10 2024 04:58:47
root / root
0644
tdemo_paint.py
1.259 KB
April 10 2024 04:57:37
root / root
0755
tdemo_paint.pyc
1.856 KB
April 10 2024 04:58:47
root / root
0644
tdemo_paint.pyo
1.856 KB
April 10 2024 04:58:47
root / root
0644
tdemo_peace.py
1.04 KB
April 10 2024 04:57:37
root / root
0755
tdemo_peace.pyc
1.355 KB
April 10 2024 04:58:47
root / root
0644
tdemo_peace.pyo
1.355 KB
April 10 2024 04:58:47
root / root
0644
tdemo_penrose.py
3.452 KB
April 10 2024 04:57:37
root / root
0755
tdemo_penrose.pyc
5.864 KB
April 10 2024 04:58:47
root / root
0644
tdemo_penrose.pyo
5.864 KB
April 10 2024 04:58:47
root / root
0644
tdemo_planet_and_moon.py
2.757 KB
April 10 2024 04:57:37
root / root
0755
tdemo_planet_and_moon.pyc
4.429 KB
April 10 2024 04:58:47
root / root
0644
tdemo_planet_and_moon.pyo
4.429 KB
April 10 2024 04:58:47
root / root
0644
tdemo_tree.py
1.377 KB
April 10 2024 04:57:37
root / root
0755
tdemo_tree.pyc
2.073 KB
April 10 2024 04:58:47
root / root
0644
tdemo_tree.pyo
2.073 KB
April 10 2024 04:58:47
root / root
0644
tdemo_two_canvases.py
1.094 KB
April 19 2020 21:13:39
root / root
0644
tdemo_two_canvases.pyc
1.597 KB
April 10 2024 04:58:47
root / root
0644
tdemo_two_canvases.pyo
1.597 KB
April 10 2024 04:58:47
root / root
0644
tdemo_wikipedia.py
1.315 KB
April 19 2020 21:13:39
root / root
0644
tdemo_wikipedia.pyc
1.909 KB
April 10 2024 04:58:47
root / root
0644
tdemo_wikipedia.pyo
1.909 KB
April 10 2024 04:58:47
root / root
0644
tdemo_yinyang.py
0.788 KB
April 10 2024 04:57:37
root / root
0755
tdemo_yinyang.pyc
1.289 KB
April 10 2024 04:58:47
root / root
0644
tdemo_yinyang.pyo
1.289 KB
April 10 2024 04:58:47
root / root
0644
turtle.cfg
0.156 KB
April 19 2020 21:13:39
root / root
0644
turtleDemo.py
9.854 KB
April 10 2024 04:57:37
root / root
0755
turtleDemo.pyc
10.691 KB
April 10 2024 04:58:47
root / root
0644
turtleDemo.pyo
10.691 KB
April 10 2024 04:58:47
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF