FE 'tkGooies' system

A 'To Do' List
of 'tkGooies'

in 'toolchest'
categories

(FE = Freedom Environment)

A 3D Model File Reader-Examiner
FE tkGooie --- 'released' circa 2013.

This 'tkGooie' may be used to
read and display output from
future 'tkGooie' utilities.

FE Home page >

FE Overview page or FE Downloads page >

FE 'tkGooies' Description & Code-Samples page >

This
FE tkGooies 'To-Do' List(s)
page

! Note !
More 'tkGooie' 'to-do' projects are to be added here
in the future --- and, when a project is implemented,
it may be removed from this page, and a link
to its code (and description) may be added on a
'tools'-group page available via the
FE 'tkGooies' Description & Code-Samples page.

This page MAY get quite out-of-date as I prioritize
working on coding more tkGooies. In any case,
this page gives a rough idea of what I have planned.

< Go to Table-of-Contents, below >
(SKIP THIS INTRO)

INTRODUCTION :

This page is an FE 'tkGooies' To-Do List --- organized into the categories of 'apps' in the tkGooie 'toolchests'.

    'tkGooies' is a subsystem in the family of Freedom Environment subsystems, at www.freedomenv.com.

    The 'tkGooies' system is composed of Tk GUI scripts which can be implemented in stand-alone mode, but are also released as 'apps' in a package of 'toolchests' (menus).

    The menus are organized into functional categories, with each script accessible via a 'drawer' in the 'toolchest' system.

Brief descriptions of Tk scripts that I plan to write for the 'tkGooies' subsystem--- in the 2019-2022 time frame (and, hopefully, beyond) --- are listed below --- within the 'toolchest' categories.

The scripts may be listed within each toolchest-category in the order in which I plan to implement them --- highest priority first.

I have no doubt that I will often be distracted by 'shiny objects' (other scripts that I would like to write).

So the 'planned order' below is likely to have some insertions and reorganizations as programming (and life) unfolds.


Method of release of these 'tkGooie' scripts :

Typically, I make a 'first release' of each of the scripts by

AND

  • putting the code in a development version of the 'tkGooies' FE system.

When I have accumulated significant changes to the development 'tkGooies' system, I package the development 'tkGooies' system in a self-extracting install file, and I make the install file available via the 'tkGooies' DOWNLOAD web page.

After a new 'tkGooie' release is posted to the DOWNLOAD page, I intend to move the 'implemented-script' descriptions (and any associated web-links) from this page to a 'tkGooies' 'RELEASED-List' page --- which is also organized in functional (toolchest, menu) categories.

That 'RELEASED-List' page will be used to provide an overview (on one page) of the numbers of scripts released in each toolchest-category --- and a total number of 'tkGooie' scripts.

I use the term 'RELEASED' rather than 'DONE', because the 'tkGooies' are not immune to future enhancements.


The need(s) to re-visit OLD 'tkGooies'

As I work through the 'to-do' NEW-script items below, I may also be working on the following tasks on OLD-scripts:

  • Add an 'aRtext' array to about 30 'OLD' tkGooies, to facilitate 'internationalizing' the text in labels, buttons, etc.

  • Add a 'Help' button to most of the tkGooie scripts that do not have one --- and provide the 'HELPtext' for that button.

  • Make sure 'expr' statements use braces to improve execution time --- especially for any 'expr' statement in double-loops over pixels in images in the 'IMAGEtools' scripts.

    Example:

    Rather than

    set deltax [expr $xPx - $x0Px]

    use

    set deltax [expr {$xPx - $x0Px}]

  • Review the 'procs' in quite a few 'tkGooie' scripts to simplify the code for re-sizing the top-level window of a GUI --- by use of the simple statement:

    wm geometry . {}

    Reference:
    The 1994 book by John Ousterhout,
    'Tcl and the Tk Toolkit', page 237.

  • Change the 'Color-selection' buttons in many 'OLD' tkGooie scripts to display the currently selected color as the color of the button.

  • Implement many of the 'proposed enhancements' that were documented for almost every 'tkGooie' when I first published it.


Timeframe (hopes and dreams)

I hope to have a major portion of the tkGooies 'to-do' items released by 2024.

Around the years 2020 to 2022, I hope to be able to feel that the 'tkGooies' system is becoming a 'mature' system --- with more than 150 tkGooie scripts released and with most of my planned enhancements to those scripts implemented --- so that I can think of most of the scripts as being in a 'pretty polished' state.


Enough of this introduction.

A 'Table of Contents' for this page follows.

Table of Contents:

(links to category sections of the 'to-do' list, below)

  • 3Dtools
    (3D model viewers, 3D file converters, 3D file generators, ...)

  • AUDIOtools
    (GUI front-ends for commands such as 'ffmpeg', 'mplayer', 'sox', 'find'-audio-files-and-use-audio-players, ...)

  • FILEmanagers for Linux/Unix/BSD/Mac
    (esp. a 'Script Applicator')
    ( also front-ends for file-management commands such as 'rsync', 'du', 'find', 'ls', ...)

  • IMAGEtools
    Sketching / Painting / Diagramming / Morphing / Pixel-Editing Utilities
    --- 'manual-interaction'-but-computer-aided utilities
    (Also front-ends for image processing commands such as ImageMagick 'convert'.)

  • INTERNETtools
    (using internet/intranet Network Protocols
    and commands like http, wget, ...)

  • MATHtools
    --- calculators, converter-selectors, ...

    • MATHed (MATHed = MATH education)
      Interactive and/or Animated Math Demonstrations
      (esp. Geometry and Number Theory)
      --- for education and/or entertainment

    • ODEtools
      (ODE = Ordinary Differential Equations)
      --- utilities to integrate various types of ODE's

  • MAPtools
    (for 'outline'-maps and 'tiled'-maps)

  • PHYSICStools
    (Usually 'algebraic' in implementation.
    For differential equations, see 'ODEtools'.)

  • PLOTtools
    (for QUICK line, pie, bar, etc. graphs)

  • SELECTORtools
    (for colors, fonts, ...)
    (Also CONVERTER-Selectors referenced by the 'MATHtools' group.)

  • SYSTEMtools
    (esp. utilities using meters/dials to show changing computer system conditions)
    (Also front-ends for system configuration & query commands such as 'xinput', 'ps', ...)

  • TEXTtools
    (esp. a 'no-Tk-includes', 'stand-alone' version of the FE 'xpg' text browser)

  • VIDEOtools
    (GUI front-ends for commands such as 'ffmpeg', 'mplayer', 'find'-movie-files-and-use-video-players, ...)

  • Tk GUI's EMBELLISHED
    (with Images) Demos

    --- experiments in 'themed' GUI's

  • Tk 'Game-Development Aids'

  • Tk 'Wiki Games'

  • Tk 'Wiki Demos'


    Some non-app postings to wiki.tcl.tk :

  • Tk Programming Aids
    (updates to a 'canonical' Tk coding method, ...)

  • Tcl-Tk Suggestions/Requests
    (for example, follow-up on requests for 'wish' interpreter enhancements --- such as a 'built-in' JPEG-read capability, NOT JPEG-write)

End of Table of Contents.

Start of the tkGooie 'to-do' sections.

The '3Dtools' TO-DO LIST :

  1. Create a 3D TERRAIN-GENERATOR from '.hgt' (binary) terrain data files
    --- by translation of the binary data into 3D model files in ASCII OBJ file format ---with the option of writing sub-sections of the '.hgt' file to the OBJ file.

  2. Create a 3D Point-Cloud Viewer (that reads vertex records in OBJ file or PLY file format).

    (Allow for selected display of vertex identifiers/numbers --- by number-range or z-depth or some other selection method.)

  3. Create a 3D MODEL FILES TRANSLATOR --- between OBJ, PLY, OFF, STL-ascii files
    --- for the vertex and polygon data --- i.e. nodes-and-connectivity data --- NOT textures, materials, etc.
    --- based on the file-reading routines in the 3D Model File Reader-Examiner FE tkGooie.

  4. Create a MOLECULE DISPLAY utility that reads atomic spatial data from a standard molecular-data file format such as ASCII PDB files.

  5. Create a MOLECULE DISPLAY utility that reads atomic spatial data from a standard molecular-data file format such as ASCII '.mol' MDL files.

  6. Create a MOLECULE DISPLAY utility that reads atomic spatial data from a standard molecular-data file format such as ASCII XYZ chemical files.

  7. Create a 3D SURFACE-GENERATOR which facilitates picking 'height-points' (and polygons, like triangles and rectangles) on images and assigning a height to the picked points
    --- on contour maps or other types of images, such as images of people's faces or images of alphanumeric (and special) characters.

    (This utility would write the data to a 3D model file, say in OBJ file format.)

  8. Create a 3D 'point cloud' Display-and-CreatePolygons utility --- with OBJ file in and OBJ file out.

  9. Create a 3D Model File Report Generator --- giving Vertex-Edge-Polygon relationship listings.

  10. Create a 3D Model File 'Touch-Up' Editor - to manually combine mesh elements and/or refine meshes.

  11. Create an Image-PointAndPolygon-Picker and 3D-Model-File Generator -
    Examples:
    contour maps to 3D terrain files --- or
    alphanumeric characters/fonts (in image files) to 3D model files
    --- or photo images (such as people faces) to 3D model files.

  12. Create a utility to do Gouraud-like shading (color interpolation) in 2D triangles and quadrilaterals of a 3D model on a Tk canvas (using colors specified at vertices).

  13. Create a utility to do Texture (image) Mapping to polygons of a 3D model file on a Tk canvas.

  14. Create a utility to generate Color Arrays and show them as stacks of colored rectangles --- for example, for use in coloring 3D terrain models.

  15. Create a 3D auto-mesh-enhancement (refinement) utility for 3D model files, like OBJ files.

  16. Create a 3D auto-mesh-'decimation' (reduction) utility for 3D model files, like OBJ files.

  17. Create a Tcl-Tk GUI utility to EXTRACT POINTS-AND-FACES DATA from 'simple' VRML1 (and SGI Inventor) files, more or less 'cleanly', into an OBJ file.

    If the VRML 1.0 specifications link above, at graphcomp.com, goes dead, try this VRML1 link at paulbourke.net.

  18. Create a Tcl-Tk GUI utility to EXTRACT POINTS-AND-FACES DATA from 'simple' VRML2 (Moving World) files, more or less 'cleanly', into an OBJ file.

      (It was idiotic that the VRML2 Architecture Group chose to use the same file suffix, '.wrl', and the same name, VRML, for two different file formats.

      VRML1 is NOT a subset of VRML2 ... in general function perhaps, but NOT in internal record format.

      They should have clarified the situation for everybody by not using the word VRML for VRML2 files. They should have used a new suffix, like '.mw', for 'Moving Worlds' files.

      What a mess that VRML2 'group' caused!)

  19. and still more '3Dtools' to-do items to come

The 'AUDIOtools' TO-DO LIST :

  1. Create a Tk GUI front-end for the 'sox' command
    --- for some AUDIO-FILE EDITING functions --- such as compressing silent spaces out of an audio file --- or compressing/expanding (companding) volume between maximum and minimum levels --- or changing frequencies.

  2. Create a Tk GUI front-end for the 'sox' command
    --- for NOTE/MUSIC-PLAYING ---
    with a piano keyboard in the GUI
    --- or by reading a music-notation file.

  3. Create a GUI 'front end' for 'mplayer'
    (Also in available in the 'VIDEOtools' toolchest.)

The 'FILEmanagers' TO-DO LIST :

  1. Create a Tk GUI front-end for the 'rsync' command
    --- to backup files in a directory hierarchy --- or to update a previous backup.

  2. Create a DATA-COLUMNS SORTER utility --- which reads columnar data 'records' from a text file and sorts the records (numerically or alphabetically) according to data in a user-selected sort-column.

  3. Create a Tk GUI front-end for the 'du' command
    a directory space-usage query --- to display sizes of a hierarchy of sub-directories

  4. Create a Tk GUI front-end for the 'find' command
    a find-files or strings-in-files query.

  5. Create a Tk GUI front-end for the 'ls' command
    a files list query --- to display lists of files in a directory hierarchy

  6. Create a file-manager GUI --- with 2 listboxes for all files of 2 directories --- like the 2-panel file managers Gnome Commander and Midnight Commander and Norton Commander (defunct).

  7. Create a file-manager GUI --- with 2 listboxes --- one for subdirectories and one for files, of 1 directory.

  8. Create a Tk GUI front end for a 'batch-find' utility with an optional to make-copies-or-links
    --- a 'front-end' for 'find' and 'cp' and 'mv' and 'ln'.

The 'IMAGEtools' TO-DO LIST :

  1. Create a 'tkColorBlindnessTesting' utility --- to experiment with changing Red-Green-Blue emphasis in color-blindness test diagrams.

  2. Create a Tk GUI front-end for the ImageMagick 'convert' command
    --- in particular, front-ends for

    --- for making 'SPIFFY TEXT-FONT' image files.

  3. Create a Tk GUI front-end for the ImageMagick 'convert' command --- for making 'embellished' or 'altered' images from any given image file --- for example:

    In other words, make a Tk GUI Front End for ImageMagick 'convert' --- to make 'spiffy'-looking images.

  4. Create a Tk GUI Front End for ImageMagick 'composite'.

  5. Create 'tkKaleidoscope' to emulate the working of a kaleidoscope
    --- which might be useful for creating images for backgrounds for logos and web pages.

  6. Create 'tkImageGridWarp2' --- like a previous ImageGridWarp utility,
    but allowing for moving grid vertices on the edges of a rectangular image in or out, into a polygon shape.

  7. Create 'tkImageSwirl' --- for 'stirring' pixels in an image.

  8. Create a Color Pixel Editor for GIF and PNG files.

  9. Create a Symmetric Color-Drawing Utility --- each item placed on a canvas is mirrored about an axis.

  10. Create
    tkImageMapper_ SphericalCoordsToPolyhedronPolygons
    --- for applying a map (like a flat Mercator map) to the surface polygons of a polyhedron like an octagon or an icosahedron or a dodecahedron.
    For example, put a world-map image onto an unfolded set of triangles.

The 'IMAGEcreatorsFlat' TO-DO LIST :

  1. Create a color-gradient-rectangular-button-maker GUI using 'shape' functions of one variable --- such as y=sin(x) or x=cos(y) --- for the color gradient.

  2. Create a color-gradient-rectangular-button-maker GUI using polar 'shape' functions of one variable --- such as radius given as a function of the angle --- for the color gradient.

  3. Create a color-gradient-rectangular-button-maker GUI using spline curves as 'shape' functions for the color gradient.

The 'IMAGEcreatorsShaded' TO-DO LIST :

  1. No new sripts pending --- but some enhancements to previously created scripts are on a 'to-do' list.

The 'IMAGEanimations' TO-DO LIST :

  1. Create a simulation of Galileo's inclined-plane apparatus for measuring acceleration due to gravity
    --- which demonstrated that gravitational acceleration is [nearly] constant [in a restricted height range] and is independent of the mass of the object.

    (On the other hand, weight, a force, of an object is proportional to the mass of the object.)

    (It took Newton to sort out a lot of the nuances of gravity and in the process explain a lot of natural phenomena --- tides, comets, planetary motions, etc.)

    (Note that this 'IMAGEanimations' toolchest script could also be an option on the 'PHYSICStools' and 'MATHtools' toolchests.)

  2. Create a better animated abstract 'visualizer'
    (than my initial attempt with 'create line' on a Tk canvas)
    --- to be driven by data from some source --- such as

    (Note that this 'IMAGEanimations' toolchest script could also be an option on the 'AUDIOtools' and 'SYSTEMtools' toolchests.)

  3. Create an enhanced Raindrops Animation.
    (See the 'Raindrops' script at wiki.tcl.tk.)
    (Add color choices, solid-fill, ripples, ...)

  4. Create an animation of the drawing of successive levels of the Koch snowflake, with color and outline-or-fill options.

  5. Create an animation of the drawing of successive levels of the Sierpinski gasket (triangle), with color and outline-or-fill options.

  6. See 'tkOscilloscope' in the 'MATHtools' To-Do list.

The 'INTERNETtools' TO-DO LIST :

  1. Create a Tk GUI front-end for the 'wget' command (a get HTML-file utility)
    --- with some options for extracting data (like media file names) from the fetched file.

The 'MAPtools' TO-DO LIST :

  1. No new sripts pending --- but some enhancements to previously created scripts are on a 'to-do' list.

The 'MATHtools' TO-DO LIST :

  1. Create a Tk GUI to calculate the absolute and relative (percent) VOLUME OF A SPHERICAL SHELL (between two concentric spheres of radii 'r' and 'R').

    Example usage: For estimating (and picturing) the amount of sedimentary (oil bearing) rock as a percent of the entire volume of the Earth.

  2. Create a nonLinear equation solver
    --- for either f(x)=0 or f(x,y)=g(x,y)=0 ---
    using a binary search (alias bisection) method.

  3. Create a nonlinear equation solver using the Newton-Raphson method.
    Reference: 'Newton-Raphson Equation Solver' at wiki.tck.tk.

  4. Create 'tkOscilloscope' to emulate the working of an oscilloscope in generating various wave-forms --- to experiment with dynamic curves in 'the plane'.

    (This script may also appear as an option in the 'IMAGEanimations' sub-toolchest of the 'IMAGEtools' toolchest.)

  5. Create a COMPOUND-INTEREST CALCULATOR Tk GUI --- for savings, asset appreciation, or mortgage interest.

  6. Create a Traffic Simulation - on a simple grid of streets with stop-lights, with simplifying assumptions.

  7. Create a MOLECULAR WEIGHT CALCULATOR Tk GUI
    --- for a user-specified number of atoms of each type in the molecule.

  8. Create a calculator for who owes how much on a house rental for a week or so --- for members of a family reunion --- with some members staying different numbers of days --- with some rooms being valued higher than others --- with some family members getting a discount (such as children or the low-earning/low-saving uncle).

The 'MATHed' TO-DO LIST :

  1. Create an interactive demo of a Thales theorem on ratios of line segment lengths
    created by intersections of parallel lines with 2 intersecting lines

  2. Create an interactive demo of a Chinese demonstration of the Pythagorean theorem

  3. Create an interactive demo of Euclid's proof of the Pythagorean theorem

  4. Create an interactive demo of Heron's formula for the area of a triangle

  5. Create a GUI for Animating Summation of Series - of Wallis, Newton, Euler, ...

  6. Create a GUI for Animating Convergence of Infinite Products - of Vieta, Wallis, ...

  7. Create an interactive demo of Ptolemy's theorem on sides & diagonals in a 'cyclic quadrilateral'

  8. Create an interactive demo of Viviani's theorem on equilateral triangles.

  9. Create an interactive demo of Simson's theorem on triangles in a circle.

  10. Create an interactive demo of Reuleaux triangles

  11. Create an interactive demo of Descartes' method of finding a square root via a semicircle construction.

  12. Create an interactive demo of the bisection method of root finding.

  13. Create a GUI for experiments with Newton's series for binomials with negative and/or fractional exponents.

  14. Create an interactive demo of an Egyptian method of approximating area of circle.

  15. Create an interactive demo of a Japanese method to approximate area of circle, with rectangles.

  16. Create an animated demo of an Japanese method of showing circle area is given by
    radius * circumference / 2
    (the 'rearrangement method').

  17. Create an interactive demo of Ceva's theorem.

  18. Create an interactive demo of Pappus's hexagon theorem.

  19. Create an interactive demo of Desargues's theorem.

  20. Create an interactive demo of using 2 triangles to multiply, divide, and take reciprocals --- a non-logarithmic sliderule.

  21. Create an interactive demo of the Law of Cosines
    (a.k.a. the cosine formula or cosine rule).

  22. Create an interactive demo of the sine & cosine half-angle formulas.

  23. Create an interactive demo of the sine & cosine sum of angles formulas.

  24. Create an interactive deom of Morley's Trisector Theorem.
    (See Keith Vetter's Morley's Triangle script at wiki.tcl.tk .)
    (Add color choices, labels, and areas/lengths/angles/etc. display.)

  25. Emulate 3D Brownian motion of a particle, a poly-lines track in 3D
    (Track is put in 3D OBJ file --- to be examined with a 3D viewer,
    such as a 3D OBJ file viewer in the '3Dtools' group.)

  26. Give the user a choice of many of the 100-plus point-line-circle (surprising) configurations that have been discovered for any given triangle. Example:
    the 9-point circle and Euler line.
    (See a similar script at wiki.tcl.tk.)
    (Add color options --- and perhaps some animation.)

  27. Create an interactive demo of Descartes' theorem on 4 'kissing' circles.

  28. Create a tkHarmonograph to trace out curves --- with color options.
    (This could trace the curves as an animation, which could also a 'drawer' in the 'IMAGEanimations' toolchest.)

  29. And still more 'MATHed' to-do projects to come.

The 'ODEtools' TO-DO LIST :

  1. Create a Tk GUI for numerical integration of
    (non-linear) ODE's for a double-pendulum (wide-swinging),
    with animation of solutions on a Tk canvas.

  2. Create a Tk GUI for numerical integration of
    (non-linear) ODE's for a spring-mass-damper system,
    with animation of solutions on a Tk canvas.

  3. Create a Tk GUI for numerical integration of
    ODE's for the plane (2D) 3-body problem,
    with animation of orbits on a Tk canvas.

  4. Create a Tk GUI for numerical integration of
    ODE's for the 3D 3-body problem,
    with trajectories output to 3D-line-segments OBJ 3D model file.

  5. Create a Tk GUI for numerical integration of
    a system of first-order ODE's
    for pharmacokinetics simulation --- 2-compartment, plasma-tissue model,
    for a chemical and up to 2 metabolites,
    oral and/or intravenous administration,
    for various mammals (mouse, rat, rabbit, dog, human, horse).

The 'PHYSICStools' TO-DO LIST :

  1. Create
    'tkAnimateRotatingMass_ ShowCentrifugalForce' - a Tk GUI for an animation of a ROTATING MASS, such as one on the end of a 'rope'
    --- including calculation of the centrifugal force (tension in the rope) as the user changes the rotation speed and/or the length of the rope and/or the mass (the latter emulating a fragment coming off of the mass, for example).

The 'PLOTtools' TO-DO LIST :

  1. Create a Tk GUI front-end for 'gnuplot' --- for making a PIE CHART from data entered in on the GUI.

    Alternatively, create a Tk GUI front-end for 'gnuplot' --- for making a PIE CHART from data read from a (small) file.

  2. Create a Tk GUI front-end for 'gnuplot' --- for making 3D CONTINENT (and country and state/province) OUTLINE-MAP PLOTS on a 3D sphere.

    (This script could also be an option in the 'MAPtools' and '3Dtools' toolchests.)

  3. Create a Tk GUI front-end for 'gnuplot' --- for making 2D CONTINENT (and country and state/province) OUTLINE-MAP PLOTS on a plane.

    (This script could also be an option in the 'MAPtools' toolchest.)

The 'SELECTORtools' TO-DO LIST :

  1. Create a Color Converter-Selector Tk GUI --- between HSL (or HSV) and RGB colors.

  2. Create a Color Converter-Selector Tk GUI --- between CMY, CMYK, and RGB colors.

  3. Create a FREQUENCY to/from WAVELENGTH converter-selector
    --- for a user-specified velocity, such as the speed-of-light or the speed-of-sound.

    (Note that the converter-selector tools of the 'SELECTORtools' toolchest are also available via the 'MATHtools' toolchest.)

  4. Create a DISTANCE-to-TIME and TIME-to-DISTANCE Converter-Selector Tk GUI
    --- for a given velocity, such as the speed-of-light or the speed-of-sound.

    (Note that the converter-selector tools of the 'SELECTORtools' toolchest are also available via the 'MATHtools' toolchest.)

The 'SYSTEMtools' TO-DO LIST :

  1. Test the re-programming of buttons of several models of mice (for faster copy-and-paste of text) and update the 'tkPointerSettings' script with the 're-mapping' info for several mice make-and-models.

  2. Create a 'Traveling History' Plot
    for CPU Usage
    --- using 'create line' or 'create image' on a Tk canvas.

  3. Create a 'Traveling History' Plot
    - for Memory-and-Swap Usage
    --- using 'create line' or 'create image' on a Tk canvas.

  4. Create a 'Traveling History' Plot
    - for Network Interface Usage
    --- using 'create line' or 'create image' on a Tk canvas.

  5. Create a Tk GUI front-end for a network-hogs utility such as the 'nethogs' command.

  6. Create a Tk GUI front-end for the 'ps' command.

The 'TEXTtools' TO-DO LIST :

  1. Create a Tk GUI front-end for the 'tesseract' OCR (Optical Character Recognition) utility.

The 'VIDEOtools' TO-DO LIST :

  1. Create a Tk GUI front-end for the 'xrandr' command --- to aid connection of a laptop computer to a TV or overhead projector.

  2. Create a Tk GUI front-end for the 'mplayer' command --- an alternative to programs like 'gmplayer' and 'smplayer' and 'gnome-mplayer'.

  3. Test 'tkWebCamAndAudioRecord_via_ffmpeg'
    --- to check out a reported problem with audio sync.

    (This 'tkGooie' may simply need one or two audio-sync parameters added to the 'ffmpeg' command.)

The 'Tk-GUIs - EMBELLISHED Demos'
TO-DO LIST :

  1. Add one or several new 'make_chest.tk' scripts
    --- to (eventually) provide a variety of 'embellished' FE toolchests
    --- embellished toolchests in the 'tkGooies' and the 'feAppMenus' systems of toolchests.

    (Also, make a selector GUI for switching to a different toolchest maker script, replacing 'make_chest.tk' 'on the fly' --- in the 'tkGooies' and 'feAppMenus' FE systems.)

The 'GameDevAids' TO-DO LIST :

  1. Create a library of BASE64 data files (including playing card images) with a Tk GUI presenter-selector.

  2. Create a library of GIF data files (including playing card images) with a Tk GUI presenter-selector.

The 'WikiGames' TO-DO LIST :

  1. Find and add a few more Tk game scripts to the Wiki-GAMES toolchest --- Tcl-Tk scripts that I have converted to run on Linux.

The 'WikiDemos' TO-DO LIST :

  1. Find and add a few more Tk GUI demos to the Wiki-DEMOS toolchests --- Tcl-Tk scripts that I have converted to run on Linux.

A 'Tk Programming Aids' TO-DO LIST :

  1. A demo script for the 'miniscale' widget,
    used above in 'CIF-1d'.
    (maybe, someday, after all the projects above are done)

  2. A demo script for the 'miniscaleH' widget,
    used above in 'C3D-ca'.
    (maybe, someday, after all the projects above are done)

  3. A demo script for the 'minilistbox' widget,
    used above 'CIF-rp' and 'CIF-gs'.
    (maybe, someday, after all the projects above are done)

  4. A demo script for a 'work-in-progress indicator',
    based on some Tcler's Wiki scripts.
    (maybe, someday, after all the projects above are done)

  5. A demo script for 'balloon helps',
    based on some Tcler's Wiki scripts.
    (maybe, someday, after all the projects above are done)

The 'TkSuggestions' TO-DO LIST :

  1. See suggestions submitted at the Tclers' Wiki as described on the FE Released 'tkGooies' page.

TOTALS

The approximate totals of 'tkGooies' To-Do at this time (circa 2019 July):

3Dtools: 18
AUDIOtools: 3
FILEmanagers: 8
IMAGEtools: 10
IMAGEcreatorsFlat: 3
IMAGEcreatorsShaded: 0
IMAGEanimations: 5
INTERNETtools: 1
MAPtools: 0
MATHtools: 8
MATHed: 28
ODEtools: 5
PHYSICStools: 1
PLOTtools: 3
SELECTORtools: 4
(including CONVERTER-Selector tools)
SYSTEMtools: 5
TEXTtools: 1
VIDEOtools: 3
Tk-GUIs-EMBELLISHED demos: 3
Tk-Game-Dev-Aids: 2

TOTAL To-Do: approx. 111 new 'tkGooies'

RESOURCES for the tkGooies 'To-Do' List :

Some resources (web links and locally-stored documents) for reference in coding the projects in this 'to do' list are available on a 'tkGooies' Resources web page.

Since web links go dead so frequently, I try to choose web links that are likely to be around for at least a few years (from the date I post them).

And, to have more long-lasting sources of information, I store some reference documents (often in the form of PDF files) on this Freedom Environment web site.

I occasionally look for information that will help me code specific Tcl-Tk scripts via a web search on keywords like 'map projection algorithm'.

I may use results of queries like this to populate the 'tkGooies Resources' web page mentioned above.

Here is a Menu of Web Searchers --- to help in finding more coding info for making 'tkGooies'.


Some MATHtools goals

In the course of developing these demos, I hope to develop some algorithms (in Tcl-Tk procs) that make it easy to perform geometric constructions.

Example:
A generalized proc for creating a line perpendicular to a given line and passing through a given point.

By developing a library of utility procs like that, it will hopefully become easier and easier to develop demos of math theorems, math results, math proofs, math facts, and math truths.

In fact, it may become possible to put together an 'interactive geometry system' somewhat like some that are listed at a Wikipedia list of interactive geometry software.

Or, at least, I should be able to show that Tcl-Tk is so flexible that one can perform demos in ways that are not available with any (or most) of these interactive-geometry software systems.

A paraphrase:

"Math longa. Vita brevis est."

From:

"Ars longa. Vita brevis est."

Meanings:

"Math lives on. Life is short."

and

"Art lives on. Life is short."

I want to use Tcl-Tk to help 'Math live on' --- in very pleasing ways.

FE 'tkGooies' . . . . GUI Tools . . . . out the Wazoo.

Bottom of this
FE 'tkGooies' TO-DO LIST
in 'toolchest' categories

page.

To return to a previously visited web page, click on the Back button of your web browser a sufficient number of times. OR, use the History-list option of your web browser.
OR ...

<Go to Table of Contents, above.>

< Go to To-Do Lists, above. >

< Go to Top of Page, above. >

Page history:

Page was started 2015 Oct 13.
(as a plain text file)

Page was changed 2015 Dec 01.
(to an HTML file)

Page was changed 2015 Dec 10.
(Moved a few items to the code-published status. Added a few to-do items.)

Page was changed 2015 Dec 11 to 14.
(Added about 26 more to-do items.)

Page was changed 2015 Dec 31.
(Removed some items that were implemented in the 2015dec11 release of tkGooies. Added a link to code for a shaded-polygon tkGooie that will be included in a 2016 release.)

Page was changed 2016 Jan 03.
(Added many links to reference material, and changed the order of several items.)

Page was changed 2016 Jan 11.
(Added a link to code for a radial-sinusoid tkGooie that will be included in a 2016 package release.)

Page was changed 2016 Jan 14.
(Added about 5 to-do items and added some links to Wikipedia information.)

Page was changed 2018 Aug 19.
(Added css and javascript to try to handle text-size for smartphones, esp. in portrait orientation.)

Page was changed 2019 Jul 13.
(Specified an image width in percents to size the image according to width of the browser window. Drastically re-organized the page --- arranged the 'to-do' items into the tkGooie 'toolchest' categories.)