summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua')
-rw-r--r--Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua64
1 files changed, 29 insertions, 35 deletions
diff --git a/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua b/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua
index 2450bba2a20..6c9677aeabb 100644
--- a/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua
+++ b/Master/texmf-dist/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua
@@ -20,39 +20,33 @@ local Storage = require "pgf.gd.lib.Storage"
declare {
key = "spring electric no coarsen layout",
algorithm = SpringElectricNoCoarsenClass,
- preconditions = { connected = true },
+ preconditions = { connected = true },
postconditions = {fixed = true},
- summary = [[
- This layout uses the algorithm proposed by Fruchterman and Reingold to draw graphs."
- ]],
-
- documentation = [[
- The Fruchterman-Reingold algorithm is one if the oldest methods
- for force-based graph drawing. It is described in:
- %
- \begin{itemize}
- \item
- Thomas M.~J.~ Fruchterman and Edward M.~ Reingold,
- \newblock Graph Drawing by Force-directed Placement,
- \newblock \emph{Software -- practice and experience,}
- 21(1 1), 1129-1164, 1991.
- \end{itemize}
- %
- Fruchterman and Reingold had to principles in graph drawing:
- %
- \begin{enumerate}
- \item Vertices connected by an edge should be drawn close to another and
- \item in general, vertices should not be drawn too close to each other.
- \end{itemize}
- %
- The spring electric no coarsen layout uses spring forces as attractive
- forces influencing vertex pairs connected by an edge and electric forces
- as repulsive forces between all vertex pairs. The original algorithm
- also contained a frame that stopped the vertices from drifting too far
- apart, but this concept was not implemented. This algorithm will not be
- affected by coarsening. This layout was implemented by using the Jedi
- framework.
+ summary = [[This layout uses the algorithm proposed by Fruchterman and Reingold to draw graphs."]],
+
+ documentation =
+ [[The Fruchterman-Reingold algorithm is one if the oldest methods
+ for force-based graph drawing. It is described in:
+ \begin{itemize}
+ \item
+ Thomas M.~J.~ Fruchterman and Edward M.~ Reingold,
+ \newblock Graph Drawing by Force-directed Placement,
+ \newblock \emph{Software -- practice and experience,}
+ 21(1 1), 1129-1164, 1991.
+ \end{itemize}
+ Fruchterman and Reingold had to principles in graph drawing:
+ \begin{enumerate}
+ \item Vertices connected by an edge should be drawn close toa another and
+ \item in general, vertices should not be drawn too close to each other.
+ \end{itemize}
+ The spring electric no coarsen layout uses spring forces as attractive
+ forces influecing vertex pairs connected by an edge and electric forces
+ as repulsive forces between all vertex pairs. The original algorithm
+ also contained a frame that stopped the vertices from drifting too far
+ apart, but this concept was not implemented. This algorithm will not be affected
+ by coarsening. This layout was implemented
+ by using the Jedi framework.
]],
example =
@@ -68,14 +62,14 @@ declare {
g -- {h, i, j},
h -- {i, j},
i -- j
- };
+ };
]],
example =
[[
\graph[spring electric no coarsen layout, speed = 0.25, node distance = 0.25cm, horizontal = c to l, nodes={as=,circle, draw, inner sep=3pt,outer sep=0pt}, coarsen = false, maximum step = 1]{
a -> b -> c -> {d1 -> e -> f -> g -> h -> i -> {j1 -> e, j2 -> l}, d2 -> l -> m}, m -> a
- };
+ };
]]
}
@@ -86,7 +80,7 @@ declare {
--define a local time function
local time_fun_1
-function time_fun_1 (t_total, t_now)
+function time_fun_1 (t_total, t_now)
if t_now/t_total <= 0.5 then
return 0.5
else
@@ -118,7 +112,7 @@ function SpringElectricNoCoarsenClass:run()
}
-- run algorithm
- spring_electric_no_coarsen:run()
+ spring_electric_no_coarsen:run()
end
return SpringElectricNoCoarsenClass \ No newline at end of file