diff --git a/src/content/post/diagram.typ b/src/content/post/diagram.typ new file mode 100644 index 0000000..55351a5 --- /dev/null +++ b/src/content/post/diagram.typ @@ -0,0 +1,61 @@ +#import "@preview/cetz:0.3.2" +#metadata(( + title: "Title", + date: "2025-01-01", +)) + +//#set page(width: auto, height: auto, margin: .5cm) + +#show math.equation: block.with(fill: white, inset: 1pt) + +This is a diagram. + +#html.frame(cetz.canvas(length: 3cm, { + import cetz.draw: * + + set-style( + mark: (fill: black, scale: 2), + stroke: (thickness: 0.4pt, cap: "round"), + angle: ( + radius: 0.3, + label-radius: .22, + fill: green.lighten(80%), + stroke: (paint: green.darken(50%)) + ), + content: (padding: 1pt) + ) + + grid((-1.5, -1.5), (1.4, 1.4), step: 0.5, stroke: gray + 0.2pt) + + circle((0,0), radius: 1) + + line((-1.5, 0), (1.5, 0), mark: (end: "stealth")) + content((), $ x $, anchor: "west") + line((0, -1.5), (0, 1.5), mark: (end: "stealth")) + content((), $ y $, anchor: "south") + + for (x, ct) in ((-1, $ -1 $), (-0.5, $ -1/2 $), (1, $ 1 $)) { + line((x, 3pt), (x, -3pt)) + content((), anchor: "north", ct) + } + + for (y, ct) in ((-1, $ -1 $), (-0.5, $ -1/2 $), (0.5, $ 1/2 $), (1, $ 1 $)) { + line((3pt, y), (-3pt, y)) + content((), anchor: "east", ct) + } + + // Draw the green angle + cetz.angle.angle((0,0), (1,0), (1, calc.tan(30deg)), + label: text(green, [#sym.alpha])) + + line((0,0), (1, calc.tan(30deg))) + + set-style(stroke: (thickness: 1.2pt)) + + line((30deg, 1), ((), "|-", (0,0)), stroke: (paint: red), name: "sin") + content(("sin.start", 50%, "sin.end"), text(red)[$ sin alpha $]) + line("sin.end", (0,0), stroke: (paint: blue), name: "cos") + content(("cos.start", 50%, "cos.end"), text(blue)[$ cos alpha $], anchor: "north") + line((1, 0), (1, calc.tan(30deg)), name: "tan", stroke: (paint: orange)) + content("tan.end", $ text(#orange, tan alpha) = text(#red, sin alpha) / text(#blue, cos alpha) $, anchor: "west") +})) diff --git a/src/lib/components/ThemeSwitch.svelte b/src/lib/components/ThemeSwitch.svelte index e85832e..1cb8b71 100644 --- a/src/lib/components/ThemeSwitch.svelte +++ b/src/lib/components/ThemeSwitch.svelte @@ -1,5 +1,6 @@