Giter VIP home page Giter VIP logo

fordfulkerson's Introduction

FordFulkerson

FordFulkerson GUI
[email protected] https://github.com/MitchellGray100/Chess

JavaFX Ford-Fulkerson Calculator. Inspired by CS 4820.

As a personal project, I created a representation of a Ford-Fulkerson Calculator in Java using JavaFX. The calculator lets the user place nodes and connect each node with edges. The nodes automatically number themselves from:
s->1->2->n...->t.
The capacities of every edge can be changed. Nodes and Edges can be removed. Nodes automatically decrement, if needed, to keep the numbered structured. Edges automatically remove themselves from removed nodes. All edges and capacities can be seen by clicking on Nodes. The left panel is scrollable incase there is a large quantity of edges coming out of a node. Max Flow can be checked with the push of a button.



Play

To Play, just download the .exe file: https://github.com/MitchellGray100/FordFulkerson/raw/main/FordFulkerson.exe.


If you gen a JNI error, make sure to download java.




Images

The Program Image of the Program

Clicked Button

Image of a Clicked Button

Smiley Face made of Nodes and Edges

Image of Smiley Face made of Nodes and Edges


GIFs

Showing off how the buttons interact when clicked and hovered over. Buttons become orange when clicked and display help info in the top left.
GIF of interactions

Shows Nodes being added into the program. Number Ordering of the Nodes increases automatically and shows the first and last node as 's' and 't'.
GIF of nodes being added

Shows Nodes being removed from the program. Number Ordering of the Nodes is changed automatically.
GIF of nodes being removed

Shows Edges being added to Nodes. Edges can be added from one Node to itself. Edges can also go from node1 to node2 but can also go from node2 to node1.
GIF of edges being added

Shows Edges being remove from Nodes. Edges are removed by either clicking on the edge itself or by clicking on the first node of the edge and then the second node of the edge. Edges connected to a node that was removed are also removed automatically.
GIF of edges being removed

Shows Capacities of the Edges being changed. Hovering over an edge changes the edge to orange and changes the mouse to a hand to make it easier for the user to click on the edge.
GIF of capacities being changed

Shows Node Information being viewed by clicking each Node. Node Information shows the connected nodes and the corresponding capacities of the edges.
GIF of node info being shown

Shows a very complicated graph that has 20 flow coming out of the Source Node. The Max Flow is calculated and revealed to be 20 aswell.
GIF of max flow calculation

Shows Node with many edges where the scroll bar needs to be used to view all edges.
GIF of Node info scroll bar being used

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.