iconsssss
All checks were successful
/ test_checkout (push) Successful in 1m57s

This commit is contained in:
Jean-Marie 'Histausse' Mineau 2025-10-27 19:34:14 +01:00
parent ee60237550
commit d63b6a6f53
Signed by: histausse
GPG key ID: B66AEEDA9B645AD2
6 changed files with 424 additions and 228 deletions

View file

@ -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()