// usage creates any necessary tags for actually using the relation in the SVG. func (r *serviceRelation) usage(canvas *svg.SVG) { l := r.shortestRelation() canvas.Line( l.p0.X, l.p0.Y, l.p1.X, l.p1.Y, fmt.Sprintf(`stroke=%q`, relationColor), fmt.Sprintf(`stroke-width="%dpx"`, relationLineWidth), fmt.Sprintf(`stroke-dasharray=%q`, strokeDashArray(l)), ) mid := l.p0.Add(l.p1).Div(2).Sub(point(healthCircleRadius, healthCircleRadius)) canvas.Use(mid.X, mid.Y, "#healthCircle") }