Commit Graph

56 Commits

Author SHA1 Message Date
Robert Machmer
f8f4391cf3 Merge branch 'release/1.0.1' into develop 2016-01-12 16:11:43 +01:00
Robert Machmer
abfaac9633 Update CHANGELOG.md 2016-01-12 16:11:36 +01:00
Robert Machmer
ba382d7617 Bump version 2016-01-12 16:10:03 +01:00
Robert Machmer
638d72ae20 Use upvalues 2016-01-12 16:04:45 +01:00
Robert Machmer
65d78b3ca9 Fix #1 - Adjust force calculation 2016-01-12 16:04:40 +01:00
Robert Machmer
b8dab695bc Remove unused varargs 2016-01-12 16:04:32 +01:00
Robert Machmer
55138721c1 Update README.md 2016-01-12 03:37:03 +01:00
rm-code
576297a5c7 Update README.md
Added example screenshot.
2016-01-12 03:23:13 +01:00
Robert Machmer
50cd67cabe Merge branch 'release/1.0.0' into develop 2016-01-12 03:20:28 +01:00
Robert Machmer
138578eb18 Update documentation 2016-01-12 03:19:28 +01:00
Robert Machmer
5fb3706f03 Remove redundant function 2016-01-12 03:16:31 +01:00
Robert Machmer
798180ca1d Update CHANGELOG.md 2016-01-12 03:05:24 +01:00
Robert Machmer
5f3ceddae5 Add info 2016-01-12 02:58:05 +01:00
Robert Machmer
137e27b996 Update README.md 2016-01-12 02:53:35 +01:00
Robert Machmer
99e8300e5d Update README.md 2016-01-12 02:30:52 +01:00
Robert Machmer
49a96a94b7 Rename library to Graphoon 2016-01-12 02:30:46 +01:00
Robert Machmer
0feff6c970 Check if target nodes exist when an edge is added 2016-01-12 02:30:41 +01:00
Robert Machmer
6c0bd6b50a Make callbacks optional 2016-01-09 13:04:02 +01:00
Robert Machmer
020713b4c3 Remove debug print 2016-01-09 12:07:01 +01:00
Robert Machmer
1681c649fb Add setter for customizing a node's mass 2016-01-09 12:06:46 +01:00
Robert Machmer
86788b748d Rewrite the drawing function to take two functions as parameters
These function will be called on each edge and node in the graph and
allow the user to determine how the graph is drawn.
2016-01-09 11:27:02 +01:00
Robert Machmer
b30389bf8a Add two callback functions to the parameter list of the update function
These functions will be called on each and every node and edge in the
graph and allow the user to extend the graphs behavior between frames.
2016-01-09 11:25:50 +01:00
Robert Machmer
8146caa558 Add varargs to the list of parameters a Node can receive 2016-01-09 05:10:38 +01:00
Robert Machmer
af7f49a2ad Remove constructor 2016-01-09 05:08:32 +01:00
Robert Machmer
7901ac1381 Add setters for replacing the default Edge and Node classes
This can be handy if the user wants to extend the functionality of those
classes. They can simply be inherited in a new class with that new class
being used in the Graph then.
2016-01-09 05:06:54 +01:00
Robert Machmer
73b74ca3fe Add Edge and Node classes to init.lua
This way they can be required separately from the Graph class.
2016-01-09 05:03:45 +01:00
Robert Machmer
4e5e302d32 Fix constructor using the old addEdge function 2016-01-09 04:02:03 +01:00
Robert Machmer
9017b40da9 Add function for adding an edge between nodes referenced by their IDs 2016-01-09 03:41:31 +01:00
Robert Machmer
732037bd04 Rename self:addEdge to self:connectNodes 2016-01-09 03:35:51 +01:00
Robert Machmer
436ec9f78f Add function for checking if a node ID already exists 2016-01-09 02:02:44 +01:00
rm-code
3adb350ca3 Update LICENSE.md 2016-01-03 11:24:51 +01:00
Robert Machmer
99850a423a Update documentation 2016-01-03 02:43:56 +01:00
Robert Machmer
dba6a49587 Remove name attribute in Node class
Seems kind of redundant to have both an id and a name attribute.
2016-01-03 02:33:03 +01:00
Robert Machmer
e6154ba5ea Allow anchor flag to be set when a Node is created 2016-01-03 02:32:57 +01:00
Robert Machmer
f5931d5ce8 Return new node when using graph:addNode 2016-01-02 15:27:30 +01:00
Robert Machmer
4bf0d0473d Remove attraction points 2016-01-02 15:19:53 +01:00
Robert Machmer
78050c9af7 Add anchor nodes
Nodes set as anchors won't be affected by the force directed layout.
They can be used to fixate the graph to a certain area.
2016-01-02 15:19:35 +01:00
Robert Machmer
47b7624261 Extend graph constructor to handle node tables
The nodes can either be a sequence of strings or a sequence of tables
containing id, name, x and y values.
2015-12-25 00:50:36 +01:00
Robert Machmer
2a258a96d5 Add nodes without name parameter 2015-12-24 22:59:15 +01:00
Robert Machmer
59a055da99 Add optional name parameter for Nodes
This parameter can be accessed via the getName getter. If no value is
passed to the constructor the name variable will default to the id.
2015-12-24 16:56:40 +01:00
Robert Machmer
35868a4360 Add getter which returns a node based on a given id 2015-12-24 03:26:08 +01:00
Robert Machmer
729afd59af Add function for checking if a node with a given id exists 2015-12-24 03:25:04 +01:00
Robert Machmer
ebb82093fb Add function for getting the x and y coordinates of the graph's center 2015-12-24 00:41:18 +01:00
Robert Machmer
6532d97cca Add function for getting the graph's boundaries 2015-12-24 00:41:12 +01:00
Robert Machmer
ac060cda1e Turn library into a package 2015-12-24 00:06:44 +01:00
Robert Machmer
f47effd6fb Create nodes inside of Graph class 2015-12-24 00:06:39 +01:00
Robert Machmer
9cf1af9540 Add docs 2015-12-23 09:03:21 +01:00
Robert Machmer
24246eaf54 Add function for creating a "global" attraction point
This point won't show up in the graph itself and can not be interacted
with. Instead it only has the purpose to attract all nodes in the graph.
This can be useful if you have unconnected nodes and want to prevent
them from floating away.
2015-12-23 08:54:18 +01:00
Robert Machmer
6b5bff63c3 Remove code for drawing the graph
Instead the draw function now takes a parameter of type function to
which it passes the edges and nodes tables. This means the user can (and
has to) handle the drawing of the graph.
2015-12-23 08:38:52 +01:00
Robert Machmer
1ad54dd376 Improve function to create a new graph based on data
The random function is now seeded properly and uses the x, y, w, and h
parameters passed to the function to determine in what range to randomly
place the nodes.
2015-12-22 02:52:16 +01:00