Documentation
¶
Index ¶
- func BuildAndWriteSVG(src io.Reader, dst io.Writer)
- type Bridge
- type Canvas
- func (c *Canvas) Bridges() []Drawable
- func (c *Canvas) Circles() []Circle
- func (c *Canvas) HalfSteps() []Line
- func (c *Canvas) Lines() []Line
- func (c *Canvas) RoundedCorners() []RoundedCorner
- func (c *Canvas) String() string
- func (c *Canvas) Text() []Drawable
- func (c *Canvas) Triangles() []Drawable
- func (c *Canvas) WriteSVGBody(dst io.Writer)
- type Circle
- type Drawable
- type Index
- type Line
- type Orientation
- type Pixel
- type RoundedCorner
- type SVG
- type Text
- type Triangle
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Bridge ¶
type Bridge struct {
// contains filtered or unexported fields
}
Bridge correspondes to combinations of "-)-" or "-(-" and is displayed as the vertical line "hopping over" the horizontal.
type Canvas ¶
Canvas represents a 2D ASCII rectangle.
func NewCanvas ¶
NewCanvas creates a new canvas with contents read from the given io.Reader. Content should be newline delimited.
func (*Canvas) Lines ¶
Lines returns a slice of all Line drawables that we can detect -- in all possible orientations.
func (*Canvas) RoundedCorners ¶
func (c *Canvas) RoundedCorners() []RoundedCorner
RoundedCorners returns a slice of all curvy corners in the diagram.
func (*Canvas) Text ¶
Text returns a slice of all text characters not belonging to part of the diagram. How these characters are identified is rather complicated.
func (*Canvas) WriteSVGBody ¶
type Circle ¶
type Circle struct {
// contains filtered or unexported fields
}
Circle corresponds to "o" or "*" runes in the absence of surrounding alphanumerics.
type Index ¶
type Index struct {
// contains filtered or unexported fields
}
Index represents a position within an ASCII diagram.
type Line ¶
type Line struct {
// contains filtered or unexported fields
}
Line represents a straight segment between two points.
type Orientation ¶
type Orientation int
Orientation represents the primary direction that a Drawable is facing.
const ( NONE Orientation = iota // No orientation; no structure present. N // North NE // Northeast NW // Northwest S // South SE // Southeast SW // Southwest E // East W // West )
type RoundedCorner ¶
type RoundedCorner struct {
// contains filtered or unexported fields
}
RoundedCorner corresponds to combinations of "-." or "-'".
func (*RoundedCorner) Draw ¶
func (c *RoundedCorner) Draw(out io.Writer)
Draw a rounded corner as an SVG elliptical arc element.