SILENT KILLERPanel

Current Path: > > lib64 > > python3.8 > turtledemo


Operation   : Linux premium131.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
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //lib64//python3.8/turtledemo

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
__init__.py File 314 bytes June 06 2023 13:32:21.
__main__.py File 14241 bytes October 17 2023 18:12:57.
bytedesign.py File 4247 bytes June 06 2023 13:32:21.
chaos.py File 951 bytes June 06 2023 13:32:21.
clock.py File 3200 bytes June 06 2023 13:32:21.
colormixer.py File 1339 bytes June 06 2023 13:32:21.
forest.py File 2965 bytes June 06 2023 13:32:21.
fractalcurves.py File 3472 bytes June 06 2023 13:32:21.
lindenmayer.py File 2433 bytes June 06 2023 13:32:21.
minimal_hanoi.py File 2050 bytes June 06 2023 13:32:21.
nim.py File 6513 bytes June 06 2023 13:32:21.
paint.py File 1290 bytes June 06 2023 13:32:21.
peace.py File 1065 bytes June 06 2023 13:32:21.
penrose.py File 3379 bytes June 06 2023 13:32:21.
planet_and_moon.py File 2824 bytes June 06 2023 13:32:21.
rosette.py File 1361 bytes June 06 2023 13:32:21.
round_dance.py File 1804 bytes June 06 2023 13:32:21.
sorting_animate.py File 5029 bytes October 17 2023 18:12:57.
tree.py File 1400 bytes June 06 2023 13:32:21.
turtle.cfg File 160 bytes June 06 2023 13:32:21.
two_canvases.py File 1119 bytes June 06 2023 13:32:21.
yinyang.py File 820 bytes June 06 2023 13:32:21.

Reading File: //lib64//python3.8/turtledemo/planet_and_moon.py

#! /usr/bin/python3.8
"""       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

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.getscreen().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.getscreen().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()

SILENT KILLER Tool