const ( LIFELINE_Z_INDEX = 1 SPAN_Z_INDEX = 2 GROUP_Z_INDEX = 3 MESSAGE_Z_INDEX = 4 NOTE_Z_INDEX = 5 )
const EDGE_GROUP_LABEL_PADDING = 20.
const GROUP_CONTAINER_PADDING = 12.
units of space on the left/right when computing the space required between actors
const HORIZONTAL_PAD = 40.
pad when the actor has the label placed OutsideMiddleBottom so that the lifeline is not so close to the text
const LIFELINE_LABEL_PAD = 5.
const LIFELINE_STROKE_DASH int = 6
const LIFELINE_STROKE_WIDTH int = 2
const MIN_ACTOR_DISTANCE = 150.
const MIN_ACTOR_WIDTH = 100.
min vertical distance between messages
const MIN_MESSAGE_DISTANCE = 30.
when a span has a single messages
const MIN_SPAN_HEIGHT = 30.
const SELF_MESSAGE_HORIZONTAL_TRAVEL = 80.
default size
const SPAN_BASE_WIDTH = 12.
as the spans start getting nested, their size grows
const SPAN_DEPTH_GROWTH_FACTOR = 8.
const SPAN_MESSAGE_PAD = 10.
units of space on the top/bottom when computing the space required between messages TODO lower
const VERTICAL_PAD = 40.
func IsLifelineEnd(obj *d2graph.Object) bool
func Layout(ctx context.Context, g *d2graph.Graph, layout d2graph.LayoutGraph) error
Layout runs the sequence diagram layout engine on objects of shape sequence_diagram
1. Run layout on sequence diagrams 2. Set the resulting dimensions to the main graph shape