$Id: graphviz-support.lisp,v 1.7 2005/06/21 20:51:51 moody Exp $
-Author: Gary King, Levente Mészáros, Attila Lendvai
+Author: Gary King, Levente Mészáros, Attila Lendvai
DISCUSSION
; "GRAPHVIZ".
;
(defmethod graph->dot ((g basic-graph) (stream stream)
- &key
+ &key
(graph-formatter 'graph->dot-properties)
(vertex-key 'vertex-id)
(vertex-labeler nil)
(vertex-formatter 'vertex->dot)
- (edge-key nil)
(edge-labeler 'princ)
- (edge-formatter 'edge->dot))
+ (edge-formatter 'edge->dot)
+ &allow-other-keys)
(format stream "~A G {~%graph " (if (contains-undirected-edge-p g) "graph" "digraph"))
(format stream "[")
(funcall graph-formatter g stream)
(:nodesep float)
(:ranksep float)
(:ordering (:out))
+ (:overlap text)
(:rankdir ("LR" "RL" "BT"))
(:pagedir text)
(:rank (:same :min :max))
(:mclimit float)
(:layers text)
(:color text)
- (:bgcolor text)))
+ (:bgcolor text)
+ (:fontname text)))
(defparameter *dot-vertex-attributes*
'((:pos coordinate)
(:height float)
(:width float)
(:margin float)
- (:fixedsize boolean)
+ (:fixed-size boolean)
(:label text)
(:shape (:record :plaintext :ellipse :circle :egg :triangle :box
:diamond :trapezium :parallelogram :house :hexagon :octagon
(:fillcolor text)
(:style (:filled :solid :dashed :dotted :bold :invis))
(:layer text)
- (:url text)))
+ (:url text)
+ (:peripheries integer)))
(defparameter *dot-edge-attributes*
'((:pos spline)