Skip to content

The Program

Sheep903 edited this page Mar 16, 2023 · 1 revision

Functions Files

Files that contain functions to do things.

Main

Language: Python3
Call to start the program.
Calls other functions to run the program.

GUI

Language: Python3
GUI to handle user inputs and setup using Tkinter.

LCD

Language: Python3
GUI on LCD screen to handle user inputs and setup using LCD screen with buttons.
Not currently implemented.

Setup

Language: Python3
Changes variables/flags used later in the program.
Interfaces with GUI and LCD.

IO

Language: Python3
Inputs from SVG file.
Outputs of error/warning/debug messages.
Interfaces with GUI and LCD for messages.

Shape Creation

Language: Python3
Extracts shape parameters from SVG file and fills shape objects from Shape.

Point Creation

Language: Python3
Creates a list of points from shapes created in Shape Creation.

Turtle Plot

Language: Python
Simulation of plotting points using the python turtle library.
Should be similar to Robot Plot.

Robot Plot

Language: C++11
Plots points using the plotter from an Arduino.
Controls stepper motors, limit switches and LED output to the user.
Not currently implemented.

PiRobot Plot

Language: Python3
Plots points using the plotter from a Raspberry Pi.
Controls stepper motors and limit switches.
Should be similar to Robot Plot.
Not currently implemented.

Definition Files

Files that define classes and global variables.

Shape

Language: Python3
Shape classes for SVG (rectangle, circle, line)

Log

Language: Python3
Class to log error/warning/error messages.

Constants

Language: Python3
Contains globals constants/flags.
Can be changed with Setup functions.

Folders

Folders containing similar files.

SVG Files

Language: SVG
Contains SVGs to test with.

Old code

Language: Python3/C++11
Contains old program (from 2022 Sem2) to be copied into the new format.
Not to be changed.

File Data Flow

Main controls the flow of data.
Greyed-out files have not been implemented.

XyCodeFlow drawio