retain text/label

This commit is contained in:
Fahmi Akbar Wildana 2025-02-18 12:22:19 +07:00
parent 3c92ce1679
commit 24a413a737
No known key found for this signature in database
GPG key ID: 7A0CD14F54006AAE
7 changed files with 428 additions and 395 deletions

View file

@ -79,6 +79,11 @@ func Render(diagram *d2target.Diagram, opts *RenderOpts) ([]byte, error) {
} }
// Canvas handles the ASCII grid and drawing operations // Canvas handles the ASCII grid and drawing operations
type TextPosition struct {
x, y, w, h int
text string
}
type Canvas struct { type Canvas struct {
grid [][]rune grid [][]rune
w, h int w, h int
@ -87,6 +92,9 @@ type Canvas struct {
scaleX, scaleY float64 scaleX, scaleY float64
offsetX, offsetY int offsetX, offsetY int
pad int pad int
// Track text positions
textPositions []TextPosition
} }
func NewCanvas(w, h int) *Canvas { func NewCanvas(w, h int) *Canvas {
@ -250,6 +258,9 @@ func (c *Canvas) drawLine(x1, y1, x2, y2 int) {
} }
func (c *Canvas) drawCenteredText(x, y, w, h int, text string) { func (c *Canvas) drawCenteredText(x, y, w, h int, text string) {
// Record position first
c.textPositions = append(c.textPositions, TextPosition{x, y, w, h, text})
lines := strings.Split(text, "\n") lines := strings.Split(text, "\n")
startY := y + (h-len(lines))/2 startY := y + (h-len(lines))/2
@ -322,62 +333,84 @@ func (c *Canvas) TrimBytes() []byte {
} }
// ReScale reduces the size of ASCII art using a pixel-like sampling technique // ReScale reduces the size of ASCII art using a pixel-like sampling technique
// BUG: somehow the text label disappear 😂
func (c *Canvas) ReScale(targetWidth, targetHeight int) { func (c *Canvas) ReScale(targetWidth, targetHeight int) {
// Calculate sampling box size scaleX := float64(targetWidth) / float64(c.w)
boxWidth := float64(c.w) / float64(targetWidth) scaleY := float64(targetHeight) / float64(c.h)
boxHeight := float64(c.h) / float64(targetHeight)
// Create new grid // Create new grid
newGrid := make([][]rune, targetHeight) newGrid := make([][]rune, targetHeight)
for i := range newGrid { for i := range newGrid {
newGrid[i] = make([]rune, targetWidth) newGrid[i] = make([]rune, targetWidth)
for j := range newGrid[i] {
newGrid[i][j] = ' '
}
} }
// Sample characters from original grid // First scale the borders and lines (source -> target mapping)
for y := 0; y < targetHeight; y++ { for y := 0; y < c.h; y++ {
for x := 0; x < targetWidth; x++ { targetY := int(float64(y) * scaleY)
// Calculate sampling box boundaries if targetY >= targetHeight {
startX := int(float64(x) * boxWidth) continue
endX := int(float64(x+1) * boxWidth) }
startY := int(float64(y) * boxHeight)
endY := int(float64(y+1) * boxHeight)
// Count character occurrences in the sampling box for x := 0; x < c.w; x++ {
charCount := make(map[rune]int) targetX := int(float64(x) * scaleX)
for sy := startY; sy < endY && sy < c.h; sy++ { if targetX >= targetWidth {
for sx := startX; sx < endX && sx < c.w; sx++ { continue
ch := c.grid[sy][sx]
charCount[ch]++
}
} }
// Choose the most appropriate character ch := c.grid[y][x]
var maxCount int if ch == '+' || ch == '-' || ch == '|' || ch == '/' || ch == '\\' || ch == '.' {
var dominant rune = ' ' newGrid[targetY][targetX] = ch
}
}
}
// Priority order for characters // Then redraw text at scaled positions
priorities := []rune{'+', '|', '-', '/', '\\', '.', ' '} for _, pos := range c.textPositions {
for _, ch := range priorities { // Get box dimensions in source coordinates first
if count := charCount[ch]; count > maxCount { srcBoxCenterY := pos.y + pos.h/2
maxCount = count
dominant = ch // Split text into lines
} lines := strings.Split(pos.text, "\n")
textHeight := len(lines)
// Calculate text start Y in source coordinates
srcStartY := srcBoxCenterY - textHeight/2
// Scale to target coordinates
newX := int(float64(pos.x) * scaleX)
newY := int(float64(srcStartY) * scaleY)
newW := int(float64(pos.w) * scaleX)
// Draw each line centered horizontally
for i, line := range lines {
targetY := newY + i
if targetY >= targetHeight {
break
}
if targetY < 0 {
continue
} }
// Special cases for line preservation // Center text horizontally within the scaled box
hasVertical := charCount['|'] > 0 || charCount['+'] > 0 startX := newX + (newW-len(line))/2
hasHorizontal := charCount['-'] > 0 || charCount['+'] > 0 for j, ch := range line {
targetX := startX + j
if targetX >= targetWidth {
break
}
if targetX < 0 {
continue
}
// Determine final character // Only overwrite space or existing text
if hasVertical && hasHorizontal { existing := newGrid[targetY][targetX]
newGrid[y][x] = '+' if existing == ' ' || (existing != '+' && existing != '-' &&
} else if hasVertical { existing != '|' && existing != '/' && existing != '\\' &&
newGrid[y][x] = '|' existing != '.') {
} else if hasHorizontal { newGrid[targetY][targetX] = ch
newGrid[y][x] = '-' }
} else {
newGrid[y][x] = dominant
} }
} }
} }

View file

@ -1,27 +1,26 @@
+-----------------+ |-----------------|
| | | |
| Hans Niemann |
| | | |
| | / |
| | /////+-----|------|----//
+-----|------|----| ///// || | ////
|| || //// || | ///
| || ///// || | ////
|| || ||// | | /|
| || || ||| || | ||
|| | | | || | || |
|| | || |
| | | | | | | |
| || | || | | | ||
| | | | | | | |
| || || | | | | ||
| || | | | || | |
+-|---------------------+|+--------------------+| | |-|---------------------||---------------------|| |
| ||| || | | ||| || |
| +--------------|+--+ || | | |--------------|---| || |
| | | || |
| | | || |
| | | || | | | | || |
| | | || | | | | || |
| | Magnus Carlsen | || |
| | | || | | | | || |
| +---------|--------+ || | | +---------|--------+ || |
| | || | | | || |
@ -33,9 +32,10 @@
| | || | | | || |
| | || | | | || |
| | || | | | || |
| +----------|----------+ || | | | || |
| | | || | | |----------|----------| || |
| | | || | | | | || |
| | Play Magnus Group | || |
| | | || | | | | || |
| | | || | | | | || |
| +----------|----------+ || | | +----------|----------+ || |
@ -43,32 +43,32 @@
| | || | | | || |
| | || | | | || |
| | || | | | || |
| || || | | || defendants ||| |
| | || | | | || /|| | |
| || | | | || /// | |
| || | | | || /// | |
| || | | | || /// | |
| +--+|---------- | | | |---|----------|/ | |
| | | | |
| | | | |
| | | | | | | | | |
| | | | | | | | | |
| | Chess.com | | |
| | | | | | | | | |
| +-------|------+ | | | +-------|------+ | |
| | | | | | | |
| | | | | | | |
| | | |
| | | || | | | ||
| | | || | || | ||
| | | || | | | /||
| || | | | | ////
| || | | | | ////
| || | | | |///
| +------+|------------+ | | |-------|------------|///|
| | | |
| | | |
| | | | | | | |
| | | | | | | |
| | Hikaru Nakamura | |
| | | | | | | |
| +--------------------+ | | +--------------------+ |
| | | |
| |
+----------------------------------------------+ +----------------------------------------------+

View file

@ -1,60 +1,60 @@
+------------------------------+ +-------------------------------+
| | | |
| | | |
| +--------------------------+ | | |
| | | | | |--------------------------| |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | +--+ +--+ +--+ +--+ | | | | | |
| | | | | | | | | | | | | | |--| |--| |--| |--| | |
| | | | | | | | | | | | +-----------------+ | | | | | | | | | | | | +-----------------+
| | | | | | | | | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | |
| | +--+ +--+ +--+ +--+ | | | +---+ | | | | | | | | | | | | | | |
| | | | | | | | | | ---+ +--+ ---+ +--+ | | | |----||
| | | | | | | | | | | | | | ||
+-----------------------------------+ | | | | | | | | +------------------------------------+ | | | | | | ||
| | | | | | | | | | | | | | | | | | ||
| | | | +--+ +--+ +--+ +--+ | | | /---+ | | | | | | | | | --- ||
| | | | | | | | | | | | | | | | | | | | | | | |--| |--| |--| |--| | | | // | ||
| +-----+ | | | | | | | | | | | | | | | | | | | +-----+ | | | | | | | | | | | | | | || | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||
| | | | | | | | | | | | | | | | | | +---+ | | | | | | | | | | | | | | | | | | || +----+|
| | | | | | +--+ +--+ +--+ +--+ | | | +--+ | | | | | | | | | | | | | | | | | | | |
| ---- ---/ | | | | | | | | | | | | | | | ---+ +--+ ---+ +--+ | | | --+| |
| / | | | | | | | | | | | | | /--|linke|--// | | | | | | | | |
| || | | | +-----+ | | | +-+---------+-+ | | | |/ | | | +------+ | | | | | | | | |
| | | | ||| | | | | | | | | | | | | | | || | | | | Test |-|--------|--| |Release |
| +-----| +-----+ || | | | | | | | | | | | | | | || | | | | | | | | | |
| | | | | | | | +--+ +--+ +--+ +--+ | | | +--| | | |-----| +-----+ | | | | | ---+ +--+ ---+ +--+ | | | --| |
| | | | | | | | | | | | | | | | | | | || +---+ | | | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |----||
| | | | +-+---------+-+ | | | | | | | | | | | || | | | | | | | | | | | | | | | | | | | | | | | | ||
| | | | | | | | | | | | | | | | | | | | | | | | |sourc| Build | |-|--------|--| | | | | | | | | | | | | | ||
| | | | | | | | +--+ +--+ +--+ +--+ | | | / | | | | | | | | | | | ---+ +--+ ---+ +--+ | | | / | ||
| | | | | | | | | | | ---+ | | | | | | | | | | | | | /--- ||
| +-----+ +-----+ | | | | | | | | | | | | | | +-----+ | | | | | | | | | ||
| || | | || | | | | | | | | | | | +-----+| | | | | | | | | | | | ||
| || | | ||+-----+ | | | | | | | | | | || | | || | | | | | | | | ||
| | | | || | | | +--+ +--+ +--+ +--+ | | | +---+ | | | | | ||+------+ | | | ---+ +--+ ---+ +--+ | | | +----+|
| /---+ +--/ | | | | | | | | | | | | | | | | // |asset| /| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | --| |--/ | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | +-----------------+ | | | | | | | | | | | | | | | | +-----------------+
| +-----+ | | | +--+ +--+ +--+ +--+ | | | +-----+ | | | ---+ +--+ ---+ +--+ | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
+-----------------------------------+ | | | | | | | | | |
| | | | +------------------------------------+ | | | |
| | | | | | | |
| | | | | | | |
| +--------------------------+ | | ---------------------------+ |
| | | |
| | | |
| | | |
+------------------------------+ +-------------------------------+

View file

@ -1,78 +1,78 @@
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | |北 海 道 |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | --------+--------+-------+-------++-------+-------++------------------------+----------------+--------+
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | |青 森 | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | |秋 田 | 岩 手 |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | 川 | |新 潟 |山 形 | 宮 城 |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | 井 | 山 |群 馬 |栃 木 | 福 島 |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | --------+--------+-------+-------++-------+-------++------------------------+----------------+--------+
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | |山 口 |島 根 ||鳥 取 |兵 庫 || 京 都 | 賀 | 野 |山 梨 |埼 玉 | 茨 城 |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | |広 島 ||岡 山 |大 阪 || 奈 良 | 阜 | 知 |静 岡 |TOKYO | 千 葉 |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | 崎 | 佐 賀 |福 岡 | || | ||和 歌 山 | 重 | | | 奈 川 | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | 熊 本 |大 分 | ||愛 媛 |香 川 || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ |-------|--------|-------|-------||-------|-------||--------|-------|-------|--------|-------|--------|
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | |鹿 児 島 |宮 崎 | ||高 知 |徳 島 || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | --------+--------+-------+-------++-------+-------++------------------------+----------------+--------+
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | 縄 | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
| || | | || | | | | || | | | | | | | || | || | | | | | |
+-------++--------+-------+-------++-------+-------+--------+-------+-------++-------+--------+--------+ --------+--------+-------+-------++-------+-------++------------------------+----------------+--------+

View file

@ -1,83 +1,83 @@
+----+ +-----+ +-----+ |-----| |-----| |-----|
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | |ndroi| |phone| | Web |
| | | | | | | | | | | |
+----+ +-----+ +-----+ +-----+ ------+ +-----+
| | | | | |
|| | | || | ||
||| | ||| ||| | |||
|||+--+--+||| ||||-----|||
|| || || |
| | | |
| | Tw////| Fron/end
| | ////// | |///
+-----+ //////// ------+ ///
////// ///
|| || || |
|| | || ||
|| || || |
|| | --------------------------------------------------------+
+------+--------------------------------------------+---+ | | | |
| | +--+--+| | | |-----||
| +----+----+ +----------------------+ | || ||----------| |---------------------| | ||
| | - | | | | || TLS-AP||(-eing/dep|ec|ted)/ hydration, visi|ility filt//ingQL||
| +----+----+ +----------------------+ | || |+-----|----+ ----------------------+ F////////|Strat||/olumn
| | | || | | /////// | ||////
| | +-----+| | | //////// ------+| ////
+------++-----------------------------------------------+ | -------||---------------//------------------------------+ |
|| | | || |/ ||
|| | || ||| ///// ||
|| || ///////// |
| /////// ///////// |
| +----------------------------------------------------++ |///// |--------------/------------------------------------||
| | +------------+ | | | |------------| |
| | | | | | | | | |
| | | | | | | | | |
+--+--+ | | | | |-----| | ## *|Timeline mix|r** |
| | | + - -- | | H/|e mix|r | - Inject ads,|wh--t--follo|, onboard|ng
+--++++ | | | | //////|-||||// | - Co|versation mo|ule |
|| |||||| | | | | ////////|| | |||/// | - Cur|oring,pagina|ion |
|| | || || | | | | ////////// ||| | || ||/// | - Tw-------------+ion |
| || | || ||| | +------------+ | ///// /// || || || || /// | - Served data logging |
|| || || | | || || +-+----+----+---------+-------+---------------+-------+ ||| | | | | || || -|-----|----|---------|-------|--------------|-------+
|| || | | | || || | | | | | | || | | | | | || | | | | | |
| | | | | | || | | | | | | || || || | | || || | || | | | |
|| || || | | || || | || | | | | || || | | || || |/ /| || || | | |
| | | | || || ||| | | | | | | | | || || //// || || | | |
| | | | || ||| ||| || | | | +-----+ | | | | || ///| /|/|-----+ | +-----+ -------+ |----|
+--+--+ +-+--+ +--+--+ +--+-+ +--+---+ ++----+ +----+ +--+-+ +-----+ +------+ | | |----| |-----| |----| |-----| |------| |-----| /| | |----| | | | | | |
| | | | | | | | | | | | | | | | | | | | | | Tw|ety |ie|ial g|ap|modu|kM|nhatt|nl|ne Ser|ic| Rank|ri|elin| A| mix|On|oardi|g Peopl| disco|e/|/tch|
+-----+ +----+ +-----+ +----+ +------+ +--+--+ | | +----+ | | | | | | -----+ +-----+ -----+ +-----+ -------+ --|---+//|//er| +----+ |ervic| |e/////|/ | |
|| +----+ +-----+ + -----+ +--+--+ | --/////// +-----+ ////////-----+ ---||+
| | | ///// /////// |
| | | ///////// //// |
| | | ///////// /// |
|| | /////|//// /// |
| | | |//// | //// |
| +--+----------------------------------------+ | | |--|-----------////-------------------------| ------+
+--+--+ | ++--+ +----+ +---+ +---+ +-----+| +-----+ |-----| ||----| ////// |---| |--| |--| |-----| | | |
| | | | | | | | | | | | || | | Hom| Scor|r ||rMix|/// Ea|lyB|rd|ta| S|ac|Co|munit|e| F|ature|
| | | | | | | | | | | | || | | | | || | | | | | | | | | | /|/ |
+++++++ | +---+ +----+ +---+ +---+ +-----+| ++---++ ||||||+ |+----+ ----+ +--+ ---+ +-----+ | /////-|--|-+
|| || || +-------------------------------------------+ | | || || || --------------------------------------------+ //////// || |
| || || || | | | /// |// //// || || | ||
| | || | | /// /// /// || | || |
| | || | | |/// //// //// || || | |
| | | | | | /// /// //// || || | |
| ||| || | | | //////////////////////// ||| || | |
+--+--+ || | || | |----| ///////////////////////// || || || |
| | +---||+-----++ +--+-+ +-----+ | | ///////////////////---|/|///---| |----| |-----|
| | | | | | | | | | Predic|ion |ervice ///////|.//|/| ////|//|hatt|n | |
| | | | | | | | | | | | | |M|mcache| | | S|oring|
| | +---+ +------+ +----+ | | | | ----+ -------+ -----+ ------+
+-----+ +--+--+ -----+ |
| |
| |
| |
+--+--+ |-----|
| | | |
| | Predic|ion S|rvice
| | | |
| | | |
+-----+ ------+

View file

@ -1,76 +1,76 @@
+--------------------------------------------------------------------------------------------------------------+ |-------------------------------------------------------------------------------------------------------------|
| | | |
| | | |
| | | |
| +------------------------------------------------+ +------------+ | | |------------------------------------------------| |------------| |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | Ran|o| Matrix Gene|ator |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | -------------------------------------------------+ -------------+ |
| +------------------------------------------------+ +-----+------+ | | | |
| | | | | |
| | | | | |
| | | | | |
+-----------------------------------------------------------+--------------------------------------------------+ ------------------------------------------------------------|-------------------------------------------------+
| |
| --------------------------------------------------------------------------------------------------------------+
+-----------------------------------------------------------+--------------------------------------------------+ | || |
| | | | | |
| | | | | |
| | | | | |
| +-----------------------------+ +---------+ +------------+---------+ +---+ +-----------------------------+ | | |-----------------------------| |---------||------------|----------||----| |-----------------------------| |
| | | | | | | | | | | | | | | | | || | || | | | |
| | | | | | || | | | | | | | | | | || | || | | | |
| | | | | | | | | | | | | | | | | || | || | | | |
| | | | +----+ | | | | | | | | | | | | | |----| || | || | | | |
| | | | | | | | | | | | | | | | | | | | || || | | | |
| | | | | | | | | | | | | | | | +--+-------+-+-------+---+ | | | | || ----+--------+----+ || | | +------+----------+------+ | |
| | +--+--+----+-+---+---+--+ | | | | | | +----+---+---++---+ | | | | +--+--++---+-+----+--+--+ | | | | | | | | || | || | | | | | || | || | | | || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | | | || | || | | | || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | | | || | || | | | || | | | | | | | || | | | |
| | | | +----+ +---+ | | | | | | | | | | | || | | | | | | | |+---+ +----+ | | | | | | |..|..5|---|n||---|9.||.8| | | | | || |..1||.32|..2|0.13| || | | |..0|.5|----| |---||.0|.8| | |
| | | | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | -----+ || | || | | | || | | | | | | | || | | | |
| | | | | | | | | | | | +----+ | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || | || | | | || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || | || | | | || | | | | | | | || | | | |
| | +--+--+----+-+---+---+--+ | | | | +----+---+---++---+ | | | | +--+--++---+-+----+--+--+ | | | | +--+-------+-+-------+---+ | | ---+ || |---||---|---|----| || | | +------+----------+------+ | |
| | | | +---+ | | | | | || | | | | | | | | | | | | | || | || | | | || | | | |
| | | | | | | | | | | || | | | | | | | | | | | | | || | || | | | || | | | |
| | | | | + | | | | | | || | | | | | | | | | |D|t ||||uct|| |..4||.15|..3|0.21| || | | | |
| | | | | + | | | | | | || | | | | | | | | | | | |++| || | || | | | || | | | |
| | +--+--+----+-+---+---+--+ | | | | | | | | | || | | | | | +--+--++---+-+----+--+--+ | | | | |--|---|---|-||---|--||--| | | | | || | || | | | || | | |---|--|----|-|---||--|--| | |
| | | | | | | | | | | | +---+ | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | ---+ || | || | | | || | | | | | | | || | | | |
| | | | | | | | | | | | | | +----+---+---++---+ | | | | | | || | | | | | | | | | | | | | || | || | | | ||ar|---||---|---|----|x --------- | | | | | || | | | |
| | | | | | | | | | | | | | | | | || | +-+---+-+ | | || | | | | | | | | | | .| . ----- |----- .||. | | | || | || | | | || | | | . |. ------ ------. |. | | |
| | | | +----+ +---+ | | | | | | | | | || | | | | | | | |+---+ +----+ | | | | | | |.6|.15|siz|n||ec0|91||48| | | || | || | | | || | | |.60|15|size| |ect||90|48| | |
| | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || | . ||. | . | . | || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || |.97||.45|.11|0.05| || | | | | | | | || | | | |
| | +--+--+----+-+---+---+--+ | | | | | | | || | | | | | +--+--++---+-+----+--+--+ | | | | +--+-------+-+-------+---+ | | || | || | | | || | | +------+----------+------+ | |
| | | | | | | | | || | | | | | | | | | | | || | || | | | || | | | |
| | | | | | +----+---+---++---+ | | | | | | | | | | || |---||---|---|----| || | | | |
| | | | | | | | | || | | | | | | | | | | | || | || | | | || | | | |
| | | | | | | | | || | | | | | | | | | | | || | || | | | || | | | |
| | +--+--+----+-+---+---+--+ | | | | | | | || | | | | | +--+--++---+-+----+--+--+ | | | | |--|---|---|-||---|--||--| | | || | || | | | || | | |---|--|----|-|---||--|--| | |
| | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || |..1||.77|..9|0.83| || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || | || | | | || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | || | | | | | | | || | | | | | | | | | | | | | || | || | | | || | || | | | || | | | | | | | || | | | |
| | | | +----+ +---+ | | | | | | | | | || | | | | | | | |+---+ +----+ | | | | | | |..|..5|---|n||---|9.||.8| | | || ----+--------+----+ || | | |..0|.5|----| |---||.0|.8| | |
| | | | | | | | | | | | | | +----+---+---++---+ | | | | | | || | | | | | | | | | | | | | || | || | | | || || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | | | | || | | | | | | | | | | | | | || | || | | | || || | | | | | | | || | | | |
| | | | | | | | | | | | | | | | | | | | || | | | | | | | | | +--+-------+-+-------+---+ | | || || | | +------+----------+------+ | |
| | +--+--+----+-+---+---+--+ | | | | | | | | +--+--++---+-+----+--+--+ | | | | | | || || | | | |
| | | | | | | | | | | | | | | | || || | | | |
| | | | | | | | | | | | | | | | || || | | | |
| | | | | | | | | | | | | | | | || || | | | |
| +-----------------------------+ +---------+ +----------------------+ +---+ +-----------------------------+ | | ------------------------------+ ----------++-----------------------++----+ ------------------------------+ |
| | | |
| | | |
| | | |
+--------------------------------------------------------------------------------------------------------------+ --------------------------------------------------------------------------------------------------------------+

View file

@ -1,6 +1,6 @@
+------------+ |------------|
| |
| | | |
| inputFile |
| | | |
+------|-----+ +------|-----+
| |
@ -8,20 +8,20 @@
| |
| |
| |
|------|-----|
| |
| d2parser |
| |
+------|-----+ +------|-----+
| |
| |
| |
+------------+
| |
| |
| |
| |
| |
| |
+----|----+ |----|----|
| |
| | | |
| d2ast |
| | | |
+----|----+ +----|----+
| |
@ -29,20 +29,20 @@
| |
| |
| |
|-------|------|
| |
| d2compiler |
| |
+-------|------+ +-------|------+
| |
| |
| |
+-------+------+
| |
| |
| |
| |
| |
| |
+-----|------+ |-----|------|
| |
| | | |
| d2graph |
| | | |
+-----|------+ +-----|------+
| |
@ -50,12 +50,11 @@
| |
| |
| |
|-------------|-------------|
| |
| d2layouts/d2dagrelayout |
| |
+-------------|-------------+ +-------------|-------------+
| |
| |
| |
+-------------+-------------+
|
| |
| |
| |
@ -63,7 +62,7 @@
| |
+-------|------+ +-------|------+
| | | |
| | | d2exporter |
| | | |
+-------|------+ +-------|------+
| |
@ -71,8 +70,9 @@
| |
| |
| |
+-----|------+ |
| | |-----|------|
| | | |
| d2target |
| | | |
+------------+ +------------+