KaceCottam / WireStructure

This is a GUI application that allows for construction and simulation of circuits using simple mouse and keyboard controls.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is a GUI application that allows for construction and simulation of circuits using simple mouse and keyboard controls. The premise is that there is a grid of points, where wires can connect. Upon each grid 'node', a gate can be placed. Sub-Circuits will be supported eventually.

Wanted Features

  • Generate a grid where we can place nodes
  • GUI controls, as well as keyboard where it makes sense.
  • Panning and Zooming on 'board'
  • Toolbox for simple gates.
  • Rotation of simple gates.
  • Simulate electric charge going through the circuit
  • Sub-circuits
  • Cross-Platform, including Web
  • Export to picture, video, and code
  • Wires that can go 'underneath' other wires

More wanted features are shown here, in the project tab of github.

  • C++
  • C++ STL
  • WxWidgets

I am using C++ and WxWidgets. WxWidgets for graphics is simple, and I am tutoring in C++. Since this is a teaching tool, it makes sense that I am going to show the code for making this to my tutees as well.

Using the standard semantic versioning scheme, V<MAJOR>.<MINOR>[.<PATCH>]

Roadmap

The interface is going to be very simplistic and understandable. There is an emphasis on fluid interaction within the program.

There is also an emphasis on native-looking panels. Below is an example of the program with ubuntu linux, dark mode.

Current interface (default)

The interface has customizable color schemes.

Light interface

docs/UML-Canvas.md Canvas Structure

About

This is a GUI application that allows for construction and simulation of circuits using simple mouse and keyboard controls.

License:MIT License


Languages

Language:C++ 82.8%Language:Makefile 10.7%Language:C 6.5%