From 620a8b342776a187b7d3aba0a2e2b7779608cb48 Mon Sep 17 00:00:00 2001 From: "Emden R. Gansner" Date: Thu, 30 Jan 2014 15:21:11 -0500 Subject: [PATCH] Update todo list for users; keep old list in internal_todo.html --- doc/Makefile.am | 2 +- doc/internal_todo.html | 141 ++++++++++++++++++++++++++++ doc/todo.html | 207 +++++++++++++++-------------------------- 3 files changed, 219 insertions(+), 131 deletions(-) create mode 100644 doc/internal_todo.html diff --git a/doc/Makefile.am b/doc/Makefile.am index f5a883d6a..36a6a77a1 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -5,7 +5,7 @@ SUBDIRS = info schema pdf = dotguide.pdf dottyguide.pdf leftyguide.pdf neatoguide.pdf libgraph/Agraph.pdf libguide/libguide.pdf smyrna/smyrna.pdf -html = build.html FAQ.html index.html winbuild.html pspdf.png char.html gdtclft.entities.example.png todo.html +html = build.html FAQ.html index.html winbuild.html pspdf.png char.html gdtclft.entities.example.png todo.html internal_todo.html txt = Dot.ref latex_suggestions.txt fontfaq.txt addingLayout.txt pdfdir = $(pkgdatadir)/doc/pdf diff --git a/doc/internal_todo.html b/doc/internal_todo.html new file mode 100644 index 000000000..a5a831e5f --- /dev/null +++ b/doc/internal_todo.html @@ -0,0 +1,141 @@ + + +Graphviz Wish List + + + +
+

Graphviz Wish List

+
+

+The 4 categories give a rough time as to when a task should be done, +and reflect an assessment of the task's ease multiplied by its importance. +Thus, orthogonal layouts are extremely important but not easy, +so they fall into category 2. The following denote owners:
+AB=Arif Bilgin
+DFWC=Don Caldwell
+DP=Dwight Perry
+ERG=Emden Gansner
+JCE=John Ellson
+SCN=Stephen North
+YH=Yifan Hu
+ +


+

Category 0

+
+ALL - Revise the buglist; fix bugs
+SCN - Update dot/neatoguide
+
+
+

Category 1

+
+JCE - Extend attribute set for line styles
+JCE - Allow arrowheads in the middle of edges
+JCE - Support single, uniform font descriptors à ala pango
+?   - Move generic node adjustment and spline routing out of neato
+AB  - smyrna
+	1 QT
+	2 Widget library. Plugins. Printing.
+	3 Full dotty replacement incl. history, checkpoints, scripting, undo.
+	4 General editor
+YH/ERG - Clusters in sfdp
+YH/ERG - Fixed nodes in sfdp
+ERG - Finish orthogonal edges (edge labels in dot; ports)
+ERG - Add stack frames/local variables to gvpr
+ERG - GvMap integrated tool
+? - Finish handling of loops using arbitrary ports
+
+
+

Category 2

+
+SCN/AB - New dot core:
+   - new mincross + clusters (partial prototype)
+   - symmetrize layouts
+  - Ulrik's improvements with network simplex
+JCE - Shapes
+	- SVG grammar or other grammar to specify node and arrow shapes
+	- user-defined nodes in all code generators
+YH/ERG - additional graph packing strategies
+? - Filters for Chaco formats.
+? - Library for bundled edges (Given two sets of nodes, with positions, 
+forming a bipartite graph, return splines to bundle the edges together)
+? - better spacing of edges along the side of a node, especially
+exposed port sides. Perhaps extend compass points to S, N, E, W to
+mean anywhere along that side.
+ERG - Tabular layout in rows and columns in dot (swim lanes)
+      Crossing minimization with some nodes in columns
+? - Enable arbitrary depth clusters in neato using IPSEP
+? - Allow mixed edge types within the same graph
+? - Off-load more to pango, such as linebreaks, right-to-left characters, etc.
+? - Allow text at an angle
+
+
+
+

Category 3

+
+Generic label placement modifying graph layout.
+Support for compound graphs.
+Allow varied layouts within clusters - recursion
+Spline router improvement (Gordon's improvements, alpha adjustments, fewer
+  inflection points)
+Fast incremental hierarchical layout
+Edge routing with just two vnodes per edge (after Kaufmann)
+Graph language improvements
+  local name spaces
+  subclassing
+Shapes - new parallelogram shape where angle is fixed for varying text
+True orthogonal layouts.
+Support rank=min/max within the context of a cluster
+
+

General R&D problems

+
+Dot with aspect ratio allowing clusters
+Dot with aspect ratio < 1
+Incremental layouts
+Dot with orthogonal, coalesced edges (e.g., this)
+Generalizing the above, support for hyperedges
+Constraint-based layouts
+Display of large-graphs (hair ball problem)
+ - relaxing constraining edges 
+ - edge bundles
+ - other
+Venn diagrams 
+Integration of geographic info - maps
+Aspect ratio in dot with clusters
+Dot with fixed width
+Adjust graph to allow no edge-node overlap with line segment edges
+
+

Done

+
+SCN/ERG - Move dot to cgraph
+SCN/ERG - new rank assignment
+JCE - Extend attribute set for line thickness
+ERG - New text labels with font elements <FONT>
+ERG - Allow edges as line segments and polylines
+ERG - New multiedge code
+YH/ERG - New overlap adjustment strategies
+YH - Faster fdp (sfdp)
+ERG - Variable port depending on layout
+ERG - Better aspect ratio in dot
+ERG - New orthogonal routing code
+JCE - use floats not ints where appropriate
+YH - Filters for Matrix Market
+ERG - New text labels with font elements <B>, <I>, <TT>, etc. (support via fontconfig or egregious hacks)
+AB  - smyrna
+	1 Design incl. 3D navigation, multiple graphs and viewports. Avoid modes.
+	2 Stable GUI. 3D mouse.
+DFWC - Lightweight edge labels in dot
+DFWC - Lightweight node labels in dot, just placed outside nodes.
+DFWC - Generic label placement without modifying graph layout.
+YH/ERG - Treemaps
+DP/ERG   - Clusters/HTML tables with rounded edges
+ERG - Filters for GraphML
+
+

Retired

+
+JCE - Revise GV_FILE_PATH to work as directory list; remove loose ends
+ERG - eliminate the nonlinear adjustment
+ - use convex hull or alpha shapes
+
+ + diff --git a/doc/todo.html b/doc/todo.html index f8599b8d9..b7ab645ea 100755 --- a/doc/todo.html +++ b/doc/todo.html @@ -1,139 +1,86 @@ -Graphviz todo list 25-May-2012 +Graphviz Wish List - + -

Graphviz todo list 25-May-2012

+
+

Graphviz Wish List

+

-The 4 categories give a rough time as to when a task should be done, -and reflect an assessment of the task's ease multiplied by its importance. -Thus, orthogonal layouts are extremely important but not easy, -so they fall into category 2. The following denote owners:
-AB=Arif Bilgin
-DFWC=Don Caldwell
-DP=Dwight Perry
-ERG=Emden Gansner
-JCE=John Ellson
-SCN=Stephen North
-YH=Yifan Hu
+We list below various projects for the improvement of Graphviz. Some are simple feature additions. +Others require significant coding and understanding of Graphviz internals, while others are open +research problems. Consideration needs to be given to how a new feature interacts or combines with +current features. Please contact us for more details.


-

Category 0

-
-ALL - Revise the buglist; fix bugs
-SCN - Update dot/neatoguide
-
-
-

Category 1

-
-JCE - Extend attribute set for line styles
-JCE - Allow arrowheads in the middle of edges
-JCE - Support single, uniform font descriptors à ala pango
-?   - Move generic node adjustment and spline routing out of neato
-AB  - smyrna
-	1 QT
-	2 Widget library. Plugins. Printing.
-	3 Full dotty replacement incl. history, checkpoints, scripting, undo.
-	4 General editor
-YH/ERG - Clusters in sfdp
-YH/ERG - Fixed nodes in sfdp
-ERG - Finish orthogonal edges (edge labels in dot; ports)
-ERG - Add stack frames/local variables to gvpr
-ERG - GvMap integrated tool
-? - Finish handling of loops using arbitrary ports
-
-
-

Category 2

-
-SCN/AB - New dot core:
-   - new mincross + clusters (partial prototype)
-   - symmetrize layouts
-  - Ulrik's improvements with network simplex
-JCE - Shapes
-	- SVG grammar or other grammar to specify node and arrow shapes
-	- user-defined nodes in all code generators
-YH/ERG - additional graph packing strategies
-? - Filters for Chaco formats.
-? - Library for bundled edges (Given two sets of nodes, with positions, 
-forming a bipartite graph, return splines to bundle the edges together)
-? - better spacing of edges along the side of a node, especially
-exposed port sides. Perhaps extend compass points to S, N, E, W to
-mean anywhere along that side.
-ERG - Tabular layout in rows and columns in dot (swim lanes)
-      Crossing minimization with some nodes in columns
-? - Enable arbitrary depth clusters in neato using IPSEP
-? - Allow mixed edge types within the same graph
-? - Off-load more to pango, such as linebreaks, right-to-left characters, etc.
-? - Allow text at an angle
-
-
-
-

Category 3

-
-Generic label placement modifying graph layout.
-Support for compound graphs.
-Allow varied layouts within clusters - recursion
-Spline router improvement (Gordon's improvements, alpha adjustments, fewer
-  inflection points)
-Fast incremental hierarchical layout
-Edge routing with just two vnodes per edge (after Kaufmann)
-Graph language improvements
-  local name spaces
-  subclassing
-Shapes - new parallelogram shape where angle is fixed for varying text
-True orthogonal layouts.
-Support rank=min/max within the context of a cluster
-
-

General R&D problems

-
-Dot with aspect ratio allowing clusters
-Dot with aspect ratio < 1
-Incremental layouts
-Dot with orthogonal, coalesced edges (e.g., this)
-Generalizing the above, support for hyperedges
-Constraint-based layouts
-Display of large-graphs (hair ball problem)
- - relaxing constraining edges 
- - edge bundles
- - other
-Venn diagrams 
-Integration of geographic info - maps
-Aspect ratio in dot with clusters
-Dot with fixed width
-Adjust graph to allow no edge-node overlap with line segment edges
-
-

Done

-
-SCN/ERG - Move dot to cgraph
-SCN/ERG - new rank assignment
-JCE - Extend attribute set for line thickness
-ERG - New text labels with font elements <FONT>
-ERG - Allow edges as line segments and polylines
-ERG - New multiedge code
-YH/ERG - New overlap adjustment strategies
-YH - Faster fdp (sfdp)
-ERG - Variable port depending on layout
-ERG - Better aspect ratio in dot
-ERG - New orthogonal routing code
-JCE - use floats not ints where appropriate
-YH - Filters for Matrix Market
-ERG - New text labels with font elements <B>, <I>, <TT>, etc. (support via fontconfig or egregious hacks)
-AB  - smyrna
-	1 Design incl. 3D navigation, multiple graphs and viewports. Avoid modes.
-	2 Stable GUI. 3D mouse.
-DFWC - Lightweight edge labels in dot
-DFWC - Lightweight node labels in dot, just placed outside nodes.
-DFWC - Generic label placement without modifying graph layout.
-YH/ERG - Treemaps
-DP/ERG   - Clusters/HTML tables with rounded edges
-ERG - Filters for GraphML
-
-

Retired

-
-JCE - Revise GV_FILE_PATH to work as directory list; remove loose ends
-ERG - eliminate the nonlinear adjustment
- - use convex hull or alpha shapes
-
+