package graphbounds

Import Path
	github.com/pancsta/d2/d2layouts/d2talalayout/internal/graphbounds (on go.dev)

Dependency Relation
	imports 5 packages, and imported by 2 packages

Involved Source Files bounds.go Package graphbounds computes work-accounted bounds for mutable TALA nodes. It owns the exact node, outside-label, icon, loop, modifier, and fixed-origin geometry shared by packing and routing. Placement policy and graph-wide edge bounds remain with their respective layout domains.
Package-Level Type Names (only one)
/* sort by: | */
WorkStepper is the aggregate accounting contract shared by callers. Bounds never create or reset a budget: every scan is charged to the caller's guard. ( WorkStepper) Finish() error ( WorkStepper) Step() error github.com/pancsta/d2/d2layouts/d2talalayout/internal/layoutgraph.ClusterGeometryWork (interface) github.com/pancsta/d2/d2layouts/d2talalayout/internal/layoutgraph.SharedWorkStepper (interface) *github.com/pancsta/d2/d2layouts/d2talalayout/internal/limits.OptimizationWorkGuard *github.com/pancsta/d2/d2layouts/d2talalayout/internal/limits.WorkGuard WorkStepper : github.com/pancsta/d2/d2layouts/d2talalayout/internal/layoutgraph.SharedWorkStepper func BoundingBox(nodes layoutgraph.Nodes, guard WorkStepper) (*geo.Point, *geo.Point, error) func FixedBoundingBox(nodes layoutgraph.Nodes, guard WorkStepper) (*geo.Point, *geo.Point, error) func NodeBoundingBox(node *layoutgraph.Node, allNodes layoutgraph.Nodes, guard WorkStepper) (*geo.Point, *geo.Point, error)
Package-Level Functions (total 3)
BoundingBox computes the packing-compatible bounds for a node set.
FixedBoundingBox computes node-set bounds and substitutes the inherited fixed origin used by packing when one of the relevant children is pinned.
NodeBoundingBox computes the packing-compatible bounds for one placed node. When allNodes is non-nil, outside labels and icons reserve their exact boundary space and outside-label extremity scans consume the shared work budget.