PHP 8.2.30
Preview: electrons.py Size: 2.27 KB
//proc/thread-self/root/usr/lib64/python2.7/Demo/tkinter/guido/electrons.py

#! /usr/bin/python2.7

# Simulate "electrons" migrating across the screen.
# An optional bitmap file in can be in the background.
#
# Usage: electrons [n [bitmapfile]]
#
# n is the number of electrons to animate; default is 30.
#
# The bitmap file can be any X11 bitmap file (look in
# /usr/include/X11/bitmaps for samples); it is displayed as the
# background of the animation.  Default is no bitmap.

from Tkinter import *
import random


# The graphical interface
class Electrons:

    # Create our objects
    def __init__(self, n, bitmap = None):
        self.n = n
        self.tk = tk = Tk()
        self.canvas = c = Canvas(tk)
        c.pack()
        width, height = tk.getint(c['width']), tk.getint(c['height'])

        # Add background bitmap
        if bitmap:
            self.bitmap = c.create_bitmap(width/2, height/2,
                                          bitmap=bitmap,
                                          foreground='blue')

        self.pieces = []
        x1, y1, x2, y2 = 10,70,14,74
        for i in range(n):
            p = c.create_oval(x1, y1, x2, y2, fill='red')
            self.pieces.append(p)
            y1, y2 = y1 +2, y2 + 2
        self.tk.update()

    def random_move(self, n):
        c = self.canvas
        for p in self.pieces:
            x = random.choice(range(-2,4))
            y = random.choice(range(-3,4))
            c.move(p, x, y)
        self.tk.update()

    # Run -- allow 500 movemens
    def run(self):
        try:
            for i in range(500):
                self.random_move(self.n)
        except TclError:
            try:
                self.tk.destroy()
            except TclError:
                pass


# Main program
def main():
    import sys, string

    # First argument is number of electrons, default 30
    if sys.argv[1:]:
        n = string.atoi(sys.argv[1])
    else:
        n = 30

    # Second argument is bitmap file, default none
    if sys.argv[2:]:
        bitmap = sys.argv[2]
        # Reverse meaning of leading '@' compared to Tk
        if bitmap[0] == '@': bitmap = bitmap[1:]
        else: bitmap = '@' + bitmap
    else:
        bitmap = None

    # Create the graphical objects...
    h = Electrons(n, bitmap)

    # ...and run!
    h.run()


# Call main when run as script
if __name__ == '__main__':
    main()

Directory Contents

Dirs: 0 × Files: 81

Name Size Perms Modified Actions
14.00 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
18.33 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
18.33 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.07 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
1.59 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.59 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.35 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
1.74 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.74 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
6.45 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
10.46 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
10.46 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
3.13 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
3.11 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
3.11 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
2.27 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
2.33 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
2.33 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.54 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
3.82 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
3.82 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
331 B lrw-r--r-- 2020-04-19 21:13:39
Edit Download
701 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
701 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
509 B lrw-r--r-- 2020-04-19 21:13:39
Edit Download
1.13 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.13 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
205 B lrw-r--r-- 2020-04-19 21:13:39
Edit Download
570 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
570 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
3.79 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
4.81 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.81 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
991 B lrw-r--r-- 2020-04-19 21:13:39
Edit Download
1.50 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.50 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
6.70 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
6.27 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
6.27 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
7.30 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
8.17 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
8.17 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.39 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
4.83 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.83 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.20 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
1.59 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.59 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
441 B lrw-r--r-- 2020-04-19 21:13:39
Edit Download
594 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
594 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.85 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
2.19 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
2.19 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.39 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
4.93 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.93 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
4.07 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
5.47 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
5.47 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
17.37 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
20.41 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
20.41 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
18.89 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
23.18 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
23.18 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
25.57 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
31.67 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
31.07 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
4.75 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
5.80 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
5.80 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
1.52 KB lrw-r--r-- 2020-04-19 21:13:39
Edit Download
2.85 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
2.85 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
8.79 KB lrwxr-xr-x 2024-04-10 04:57:37
Edit Download
8.88 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
8.88 KB lrw-r--r-- 2024-04-10 04:58:47
Edit Download
623 B lrw-r--r-- 2020-04-19 21:13:39
Edit Download
737 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download
737 B lrw-r--r-- 2024-04-10 04:58:47
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).