Added files
This commit is contained in:
parent
7868c17358
commit
0ea46a3d72
39
README.md
39
README.md
@ -1,2 +1,39 @@
|
|||||||
# graph-explorer
|
# Graph Explorer
|
||||||
This is a WOK (wealth of knowledge) explorer that I made for fun and profit for CSE280.
|
This is a WOK (wealth of knowledge) explorer that I made for fun and profit for CSE280.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
All you need is pygame!
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pip install pygame
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
```bash
|
||||||
|
python3 main.py
|
||||||
|
```
|
||||||
|
Select a node by clicking it; this will focus the links that are directed out of that node.
|
||||||
|
|
||||||
|
Press "P" to select all nodes.
|
||||||
|
|
||||||
|
Press "F" to find a node (this is done as a prompt in the shell).
|
||||||
|
|
||||||
|
Press "Space" to pause the visualization.
|
||||||
|
|
||||||
|
Press "C" to clear all the selected nodes.
|
||||||
|
|
||||||
|
|
||||||
|
## Using the WOK Builder
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python3 builder.py
|
||||||
|
```
|
||||||
|
|
||||||
|
The builder is a simple one; click anywhere where there is not a node to create a new one (prompted in terminal).
|
||||||
|
|
||||||
|
You can add links between nodes by selecting first the source node and then the directed node. A description for the link will be prompted in the terminal.
|
||||||
|
|
||||||
|
If you accidentally link two nodes, you can cancel the link by typing "no" in the description.
|
||||||
|
|
||||||
|
Press "F" to search for a node. If found, this node will turn blue.
|
||||||
|
@ -9,8 +9,9 @@ def main():
|
|||||||
clock = pygame.time.Clock()
|
clock = pygame.time.Clock()
|
||||||
|
|
||||||
running = True
|
running = True
|
||||||
graph = Graph(screen, file="finalGraph.txt")
|
# graph = Graph(screen, file="copy.txt")
|
||||||
graph.fromFile(False)
|
# graph.fromFile(False)
|
||||||
|
graph = Graph(screen)
|
||||||
isNodeUnderMouse = False
|
isNodeUnderMouse = False
|
||||||
node1 = None
|
node1 = None
|
||||||
node2 = None
|
node2 = None
|
||||||
@ -25,7 +26,7 @@ def main():
|
|||||||
file.close()
|
file.close()
|
||||||
running = False
|
running = False
|
||||||
if event.type == pygame.KEYDOWN:
|
if event.type == pygame.KEYDOWN:
|
||||||
if event.key == pygame.K_SPACE:
|
if event.key == pygame.K_f:
|
||||||
find = input("Name of node: ")
|
find = input("Name of node: ")
|
||||||
for i in graph.nodes:
|
for i in graph.nodes:
|
||||||
if i.text == find:
|
if i.text == find:
|
||||||
@ -40,7 +41,7 @@ def main():
|
|||||||
graph.drawLinks(i)
|
graph.drawLinks(i)
|
||||||
if (node1):
|
if (node1):
|
||||||
node2 = i
|
node2 = i
|
||||||
description = input("Description of link: ")
|
description = input("Description of link between " + node1.text + " and " + node2.text + ": ")
|
||||||
if (description != "no"):
|
if (description != "no"):
|
||||||
graph.links.append([node1, node2, 1.0, description])
|
graph.links.append([node1, node2, 1.0, description])
|
||||||
node2 = None
|
node2 = None
|
Loading…
Reference in New Issue
Block a user