PreviousUpNext

15.4.1040  src/lib/std/dot/planar-graphtree-traits.pkg

## planar-graphtree-traits.pkg
#
# Define the per-graph, per-node and per-edge
# information maintained by the planar-graphtree
# graphs used to hold graphs once planar layout is done.

# Compiled by:
#     src/lib/std/standard.lib

# Compare to:
#     src/lib/std/dot/dot-graphtree-traits.pkg

# This package gets referenced in:
#     src/lib/std/dot/planar-graphtree.pkg

stipulate
    package dt =  dot_graphtree_traits;                         # dot_graphtree_traits  is from   src/lib/std/dot/dot-graphtree-traits.pkg
    package dg =  dot_graphtree;                                # dot_graphtree         is from   src/lib/std/dot/dot-graphtree.pkg
    package gf =  geometry2d_float;                             # geometry2d_float      is from   src/lib/std/2d/geometry2d-float.pkg
herein

    package planar_graphtree_traits {

        Graph_Info
            =
            { graph:            dg::Traitful_Graph,
              graph_bbox:       gf::Box,                        # Bounding box of entire graph.
              fontsize:         Int
            };

        Node_Info
            =
            { position:  gf::Point,
              shape:     dt::Shape,
              bbox:      gf::Box,
              # 
              base:      dg::Node,
              label:     String
            };

        Edge_Info
            =
            { bbox:             gf::Box,                        # Bounding box of spline.
              points:     List( gf::Point ),                    # Spline control points.
              arrowhead:  List( gf::Point )                     # Arrowhead for edge.
            };
    };

end;


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext