https://github.com/cerus/logic-builder
An ugly & interactive logic gate visualizer written in Java using plain old Java Swing
https://github.com/cerus/logic-builder
hacktoberfest java logic-circuit logic-circuit-simulator logic-gate-simulator logic-gates logic-simulation swing swing-gui
Last synced: 2 months ago
JSON representation
An ugly & interactive logic gate visualizer written in Java using plain old Java Swing
- Host: GitHub
- URL: https://github.com/cerus/logic-builder
- Owner: cerus
- License: mit
- Created: 2020-07-28T22:37:38.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-10-04T14:58:59.000Z (over 4 years ago)
- Last Synced: 2025-01-24T17:44:46.326Z (4 months ago)
- Topics: hacktoberfest, java, logic-circuit, logic-circuit-simulator, logic-gate-simulator, logic-gates, logic-simulation, swing, swing-gui
- Language: Java
- Homepage:
- Size: 42 KB
- Stars: 3
- Watchers: 3
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# logic-builder
[](#contributors-)
An ugly & interactive logic gate visualizer written in Java using plain old Java Swing\
Contributions are more than welcome!## Download
[](https://github.com/RealCerus/logic-builder/releases/latest)## Idea
The idea for this program came to mind shortly after I made my little alu representation. I was building a little ripple carry adder in the popular sandbox game Minecraft when I suddenly got the idea for this program.## Use cases
This program can be used to understand how logic gates work, visualize complex structures or just play around with different gates.## Controls
- Hold left click to drag nodes / draw connections
- Right click to remove a node
- Hold middle click to move the whole screen## Available gates
- AND, OR, XOR, NOT (Inverter)
- Splitter (Takes a signal and outputs the same signal twice)
- BCD to 7-segment display gateThe following are not really gates, but I don't know where else I could list them:
- Input (Can be altered by the user; Double click to toggle the state)
- BCD Input (Converts a decimal into a binary-coded decimal)
- Output
- 7-Segment display output## Known bugs
- StackOverflowError when creating infinite recursion ([#1](https://github.com/RealCerus/logic-builder/issues/1))## Todo
- Finish javadoc comments ([#2](https://github.com/RealCerus/logic-builder/issues/2))
- Add Json exporter and importer ([#3](https://github.com/RealCerus/logic-builder/issues/3))
- Add a tool to create custom gates from Json exports ([#4](https://github.com/RealCerus/logic-builder/issues/4))
- Maybe add more gates?## Gallery
Click to expand
## License
[MIT](LICENSE)## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!