This commit is contained in:
parent
ee60237550
commit
d63b6a6f53
6 changed files with 424 additions and 228 deletions
|
|
@ -1,7 +1,7 @@
|
|||
#import "./icons.typ": *
|
||||
|
||||
|
||||
#let static_outline(
|
||||
#let static-outline(
|
||||
small_icon_size: 100pt,
|
||||
big_icon_size: 200pt,
|
||||
) = context {
|
||||
|
|
@ -83,7 +83,7 @@
|
|||
)
|
||||
}
|
||||
|
||||
#let dexhunter_outline(
|
||||
#let dexhunter-outline(
|
||||
small_icon_size: 100pt,
|
||||
big_icon_size: 200pt,
|
||||
) = context {
|
||||
|
|
@ -221,10 +221,22 @@
|
|||
)
|
||||
}
|
||||
|
||||
#let theseus_outline(
|
||||
#let theseus-outline(
|
||||
small_icon_size: 60pt,
|
||||
big_icon_size: 90pt,
|
||||
stage: "theseus",
|
||||
) = context {
|
||||
let stages = (
|
||||
"static-only",
|
||||
"static-vs-dyn",
|
||||
"theseus",
|
||||
"theseus-no-static",
|
||||
"theseus-vs-static",
|
||||
)
|
||||
assert(
|
||||
stage in stages,
|
||||
message: "theseus-outline stage arg must be in: " + repr(stages)
|
||||
)
|
||||
let width = (
|
||||
small_icon_size * 4 +
|
||||
big_icon_size * 3 +
|
||||
|
|
@ -352,213 +364,295 @@
|
|||
height: height,
|
||||
//stroke: black,
|
||||
{
|
||||
place(
|
||||
left+bottom,
|
||||
dx: app_pos.at(0),
|
||||
dy: app_pos.at(1),
|
||||
app
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: dex_pos0.at(0),
|
||||
dy: dex_pos0.at(1),
|
||||
dex
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: dex_pos1.at(0),
|
||||
dy: dex_pos1.at(1),
|
||||
dex
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: rprt_pos2.at(0),
|
||||
dy: rprt_pos2.at(1),
|
||||
rprt
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: phone_pos.at(0),
|
||||
dy: phone_pos.at(1),
|
||||
phone
|
||||
)
|
||||
if stage == "static-only" {
|
||||
place(
|
||||
left+bottom,
|
||||
dx: app2_pos.at(0),
|
||||
dy: app2_pos.at(1),
|
||||
app
|
||||
)
|
||||
/*
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_static_pos.at(0) + app_size.width + arrow_gap,
|
||||
app_static_pos.at(1) - app_size.height / 2
|
||||
),
|
||||
(
|
||||
analyser_pos2.at(0) - arrow_gap,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2
|
||||
)
|
||||
)*/
|
||||
} else {
|
||||
place(
|
||||
left+bottom,
|
||||
dx: app_pos.at(0),
|
||||
dy: app_pos.at(1),
|
||||
app
|
||||
)
|
||||
}
|
||||
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app_size.width + arrow_gap,
|
||||
app_pos.at(1) - app_size.height / 2
|
||||
),
|
||||
(
|
||||
phone_pos.at(0) - arrow_gap,
|
||||
phone_pos.at(1) - phone_size.height / 2,
|
||||
if stage not in ("static-only") {
|
||||
place(
|
||||
left+bottom,
|
||||
dx: phone_pos.at(0),
|
||||
dy: phone_pos.at(1),
|
||||
phone
|
||||
)
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_1_x0, arrow_1_y0_0),
|
||||
(arrow_1_x1, arrow_1_y0_0),
|
||||
(arrow_1_x1, arrow_1_y1_0),
|
||||
(arrow_1_x2, arrow_1_y1_0),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_1_x0, arrow_1_y0_1),
|
||||
(arrow_1_x1, arrow_1_y0_1),
|
||||
(arrow_1_x1, arrow_1_y1_1),
|
||||
(arrow_1_x2, arrow_1_y1_1),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_1_x0, arrow_1_y0_2),
|
||||
(arrow_1_x1, arrow_1_y0_2),
|
||||
(arrow_1_x1, arrow_1_y1_2),
|
||||
(arrow_1_x2, arrow_1_y1_2),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_2_x0, arrow_2_y0_0),
|
||||
(arrow_2_x1, arrow_2_y0_0),
|
||||
(arrow_2_x1, arrow_2_y1_0),
|
||||
(arrow_2_x2, arrow_2_y1_0),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_2_x0, arrow_2_y0_1),
|
||||
(arrow_2_x1, arrow_2_y0_1),
|
||||
(arrow_2_x1, arrow_2_y1_1),
|
||||
(arrow_2_x2, arrow_2_y1_1),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_2_x0, arrow_2_y0_2),
|
||||
(arrow_2_x1, arrow_2_y0_2),
|
||||
(arrow_2_x1, arrow_2_y1_2),
|
||||
(arrow_2_x2, arrow_2_y1_2),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app_size.width + arrow_gap,
|
||||
app_pos.at(1) - app_size.height / 2
|
||||
),
|
||||
(
|
||||
phone_pos.at(0) - arrow_gap,
|
||||
phone_pos.at(1) - phone_size.height / 2,
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
place(
|
||||
bottom+left,
|
||||
dx: patcher_pos.at(0),
|
||||
dy: patcher_pos.at(1),
|
||||
patcher
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
patcher_pos.at(0) + patcher_size.width + arrow_gap,
|
||||
patcher_pos.at(1) - patcher_size.height / 2
|
||||
),
|
||||
(
|
||||
app2_pos.at(0) - arrow_gap,
|
||||
app2_pos.at(1) - app2_size.height / 2,
|
||||
if stage not in ("static-only", "static-vs-dyn") {
|
||||
place(
|
||||
left+bottom,
|
||||
dx: dex_pos0.at(0),
|
||||
dy: dex_pos0.at(1),
|
||||
dex
|
||||
)
|
||||
)
|
||||
place(
|
||||
bottom+left,
|
||||
dx: app2_pos.at(0),
|
||||
dy: app2_pos.at(1),
|
||||
app2
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app2_pos.at(0) + app2_size.width + arrow_gap,
|
||||
app2_pos.at(1) - app2_size.height / 2
|
||||
),
|
||||
(
|
||||
analyser_pos.at(0) - arrow_gap,
|
||||
analyser_pos.at(1) - analyser_size.height / 2,
|
||||
place(
|
||||
left+bottom,
|
||||
dx: dex_pos1.at(0),
|
||||
dy: dex_pos1.at(1),
|
||||
dex
|
||||
)
|
||||
)
|
||||
place(
|
||||
bottom+left,
|
||||
dx: analyser_pos.at(0),
|
||||
dy: analyser_pos.at(1),
|
||||
analyser
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
analyser_pos.at(0) + analyser_size.width + arrow_gap,
|
||||
analyser_pos.at(1) - analyser_size.height / 2
|
||||
),
|
||||
(
|
||||
rprt2_pos.at(0) - arrow_gap,
|
||||
rprt2_pos.at(1) - rprt_size.height / 2,
|
||||
place(
|
||||
left+bottom,
|
||||
dx: rprt_pos2.at(0),
|
||||
dy: rprt_pos2.at(1),
|
||||
rprt
|
||||
)
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: rprt2_pos.at(0),
|
||||
dy: rprt2_pos.at(1),
|
||||
rprt
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app_size.width / 2,
|
||||
app_pos.at(1) + arrow_gap,
|
||||
),
|
||||
(
|
||||
app_pos.at(0) + app_size.width / 2,
|
||||
-arrow_width
|
||||
),
|
||||
(
|
||||
patcher_pos.at(0) + patcher_size.width / 2,
|
||||
-arrow_width
|
||||
),
|
||||
(
|
||||
patcher_pos.at(0) + patcher_size.width / 2,
|
||||
patcher_pos.at(1) + arrow_gap
|
||||
)
|
||||
)
|
||||
|
||||
place(
|
||||
bottom+left,
|
||||
dx: analyser_pos2.at(0),
|
||||
dy: analyser_pos2.at(1),
|
||||
analyser
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: rprt3_pos.at(0),
|
||||
dy: rprt3_pos.at(1),
|
||||
rprt
|
||||
)
|
||||
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
analyser_pos2.at(0) + analyser_size.width + arrow_gap,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2,
|
||||
),
|
||||
(
|
||||
rprt3_pos.at(0) - arrow_gap,
|
||||
rprt3_pos.at(1) - rprt_size.height / 2,
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_1_x0, arrow_1_y0_0),
|
||||
(arrow_1_x1, arrow_1_y0_0),
|
||||
(arrow_1_x1, arrow_1_y1_0),
|
||||
(arrow_1_x2, arrow_1_y1_0),
|
||||
)
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app_size.width/2,
|
||||
app_pos.at(1) - app_size.height - arrow_gap,
|
||||
),
|
||||
(
|
||||
app_pos.at(0) + app_size.width/2,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2,
|
||||
),
|
||||
(
|
||||
analyser_pos2.at(0) - arrow_gap,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2,
|
||||
),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_1_x0, arrow_1_y0_1),
|
||||
(arrow_1_x1, arrow_1_y0_1),
|
||||
(arrow_1_x1, arrow_1_y1_1),
|
||||
(arrow_1_x2, arrow_1_y1_1),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_1_x0, arrow_1_y0_2),
|
||||
(arrow_1_x1, arrow_1_y0_2),
|
||||
(arrow_1_x1, arrow_1_y1_2),
|
||||
(arrow_1_x2, arrow_1_y1_2),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_2_x0, arrow_2_y0_0),
|
||||
(arrow_2_x1, arrow_2_y0_0),
|
||||
(arrow_2_x1, arrow_2_y1_0),
|
||||
(arrow_2_x2, arrow_2_y1_0),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_2_x0, arrow_2_y0_1),
|
||||
(arrow_2_x1, arrow_2_y0_1),
|
||||
(arrow_2_x1, arrow_2_y1_1),
|
||||
(arrow_2_x2, arrow_2_y1_1),
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(arrow_2_x0, arrow_2_y0_2),
|
||||
(arrow_2_x1, arrow_2_y0_2),
|
||||
(arrow_2_x1, arrow_2_y1_2),
|
||||
(arrow_2_x2, arrow_2_y1_2),
|
||||
)
|
||||
|
||||
place(
|
||||
bottom+left,
|
||||
dx: patcher_pos.at(0),
|
||||
dy: patcher_pos.at(1),
|
||||
patcher
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
patcher_pos.at(0) + patcher_size.width + arrow_gap,
|
||||
patcher_pos.at(1) - patcher_size.height / 2
|
||||
),
|
||||
(
|
||||
app2_pos.at(0) - arrow_gap,
|
||||
app2_pos.at(1) - app2_size.height / 2,
|
||||
)
|
||||
)
|
||||
place(
|
||||
bottom+left,
|
||||
dx: app2_pos.at(0),
|
||||
dy: app2_pos.at(1),
|
||||
app2
|
||||
)
|
||||
}
|
||||
if stage == "static-vs-dyn" {
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app2_size.width / 2,
|
||||
app_pos.at(1) + arrow_gap
|
||||
),
|
||||
(
|
||||
app_pos.at(0) + app2_size.width / 2,
|
||||
phone_pos.at(1) + arrow_gap * 2
|
||||
),
|
||||
(
|
||||
app2_pos.at(0) + app2_size.width + arrow_gap,
|
||||
phone_pos.at(1) + arrow_gap * 2
|
||||
),
|
||||
(
|
||||
app2_pos.at(0) + app2_size.width + arrow_gap,
|
||||
app2_pos.at(1) - app2_size.height / 2
|
||||
),
|
||||
(
|
||||
analyser_pos.at(0) - arrow_gap,
|
||||
analyser_pos.at(1) - analyser_size.height / 2,
|
||||
)
|
||||
)
|
||||
}
|
||||
if stage in (
|
||||
"theseus",
|
||||
"theseus-vs-static",
|
||||
"static-only"
|
||||
) {
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app2_pos.at(0) + app2_size.width + arrow_gap,
|
||||
app2_pos.at(1) - app2_size.height / 2
|
||||
),
|
||||
(
|
||||
analyser_pos.at(0) - arrow_gap,
|
||||
analyser_pos.at(1) - analyser_size.height / 2,
|
||||
)
|
||||
)
|
||||
}
|
||||
if stage in (
|
||||
"theseus",
|
||||
"static-vs-dyn",
|
||||
"theseus-vs-static",
|
||||
"static-only"
|
||||
) {
|
||||
place(
|
||||
bottom+left,
|
||||
dx: analyser_pos.at(0),
|
||||
dy: analyser_pos.at(1),
|
||||
analyser
|
||||
)
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
analyser_pos.at(0) + analyser_size.width + arrow_gap,
|
||||
analyser_pos.at(1) - analyser_size.height / 2
|
||||
),
|
||||
(
|
||||
rprt2_pos.at(0) - arrow_gap,
|
||||
rprt2_pos.at(1) - rprt_size.height / 2,
|
||||
)
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: rprt2_pos.at(0),
|
||||
dy: rprt2_pos.at(1),
|
||||
rprt
|
||||
)
|
||||
}
|
||||
if stage in (
|
||||
"theseus",
|
||||
"theseus-vs-static",
|
||||
) {
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app_size.width / 2,
|
||||
app_pos.at(1) + arrow_gap,
|
||||
),
|
||||
(
|
||||
app_pos.at(0) + app_size.width / 2,
|
||||
-arrow_width
|
||||
),
|
||||
(
|
||||
patcher_pos.at(0) + patcher_size.width / 2,
|
||||
-arrow_width
|
||||
),
|
||||
(
|
||||
patcher_pos.at(0) + patcher_size.width / 2,
|
||||
patcher_pos.at(1) + arrow_gap
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
if stage not in (
|
||||
"static-only",
|
||||
"static-vs-dyn",
|
||||
"theseus",
|
||||
"theseus-no-static",
|
||||
) {
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
app_pos.at(0) + app_size.width/2,
|
||||
app_pos.at(1) - app_size.height - arrow_gap,
|
||||
),
|
||||
(
|
||||
app_pos.at(0) + app_size.width/2,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2,
|
||||
),
|
||||
(
|
||||
analyser_pos2.at(0) - arrow_gap,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2,
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
if stage in (
|
||||
"theseus-vs-static",
|
||||
) {
|
||||
place(
|
||||
bottom+left,
|
||||
dx: analyser_pos2.at(0),
|
||||
dy: analyser_pos2.at(1),
|
||||
analyser
|
||||
)
|
||||
place(
|
||||
left+bottom,
|
||||
dx: rprt3_pos.at(0),
|
||||
dy: rprt3_pos.at(1),
|
||||
rprt
|
||||
)
|
||||
|
||||
arrow(
|
||||
stroke: arrow_width + black,
|
||||
(
|
||||
analyser_pos2.at(0) + analyser_size.width + arrow_gap,
|
||||
analyser_pos2.at(1) - analyser_size.height / 2,
|
||||
),
|
||||
(
|
||||
rprt3_pos.at(0) - arrow_gap,
|
||||
rprt3_pos.at(1) - rprt_size.height / 2,
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
#set page(flipped: true)
|
||||
#set align(center+horizon)
|
||||
#dexhunter_outline()
|
||||
#static_outline()
|
||||
#theseus_outline()
|
||||
#dexhunter-outline()
|
||||
#static-outline()
|
||||
#theseus-outline()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue