mirror of
https://github.com/kristoferssolo/Qualification-Thesis.git
synced 2025-10-21 20:10:37 +00:00
Init presentation
This commit is contained in:
parent
01f37de1df
commit
09b3e38b52
255
presentation.typ
Normal file
255
presentation.typ
Normal file
@ -0,0 +1,255 @@
|
||||
#import "@preview/touying:0.5.5": *
|
||||
#import themes.university: *
|
||||
#import "@preview/cetz:0.3.1"
|
||||
#import "@preview/fletcher:0.5.3" as fletcher: node, edge
|
||||
#import "@preview/ctheorems:1.1.3": *
|
||||
#import "@preview/numbly:0.1.0": numbly
|
||||
|
||||
|
||||
#set text(
|
||||
font: (
|
||||
"Times New Roman",
|
||||
"New Computer Modern",
|
||||
),
|
||||
size: 12pt,
|
||||
hyphenate: auto,
|
||||
lang: "lv",
|
||||
region: "lv",
|
||||
)
|
||||
#show raw: set text(
|
||||
font: (
|
||||
"JetBrainsMono NF",
|
||||
"JetBrains Mono",
|
||||
"Fira Code",
|
||||
),
|
||||
features: (calt: 0),
|
||||
)
|
||||
|
||||
// cetz and fletcher bindings for touying
|
||||
#let cetz-canvas = touying-reducer.with(
|
||||
reduce: cetz.canvas,
|
||||
cover: cetz.draw.hide.with(bounds: true),
|
||||
)
|
||||
#let fletcher-diagram = touying-reducer.with(
|
||||
reduce: fletcher.diagram,
|
||||
cover: fletcher.hide,
|
||||
)
|
||||
|
||||
// Theorems configuration by ctheorems
|
||||
#show: thmrules.with(qed-symbol: $square$)
|
||||
#let theorem = thmbox("theorem", "Theorem", fill: rgb("#eeffee"))
|
||||
#let corollary = thmplain(
|
||||
"corollary",
|
||||
"Corollary",
|
||||
base: "theorem",
|
||||
titlefmt: strong,
|
||||
)
|
||||
#let definition = thmbox(
|
||||
"definition",
|
||||
"Definition",
|
||||
inset: (x: 1.2em, top: 1em),
|
||||
)
|
||||
#let example = thmplain("example", "Example").with(numbering: none)
|
||||
#let proof = thmproof("proof", "Proof")
|
||||
|
||||
#show: university-theme.with(
|
||||
aspect-ratio: "16-9",
|
||||
config-info(
|
||||
title: [Kvalifikācijas darbs],
|
||||
subtitle: [Spēles izstrāde, izmantojot Bevy spēļu dzinēju],
|
||||
author: [Kristiāns Francis Cagulis kc22015],
|
||||
institution: [Latvijas Universitāte],
|
||||
// logo: emoji.school,
|
||||
),
|
||||
config-colors(
|
||||
primary: rgb("#575279"),
|
||||
secondary: rgb("#797593"),
|
||||
tertiary: rgb("#286983"),
|
||||
neutral-lightest: rgb("#faf4ed"),
|
||||
neutral-darkest: rgb("#575279"),
|
||||
),
|
||||
)
|
||||
|
||||
#set heading(numbering: numbly("{1}.", default: "1.1"))
|
||||
|
||||
#title-slide()
|
||||
|
||||
= Animation
|
||||
|
||||
== Simple Animation
|
||||
|
||||
We can use `#pause` to #pause display something later.
|
||||
|
||||
#pause
|
||||
|
||||
Just like this.
|
||||
|
||||
#meanwhile
|
||||
|
||||
Meanwhile, #pause we can also use `#meanwhile` to #pause display other content synchronously.
|
||||
|
||||
#speaker-note[
|
||||
+ This is a speaker note.
|
||||
+ You won't see it unless you use `config-common(show-notes-on-second-screen: right)`
|
||||
]
|
||||
|
||||
|
||||
== Complex Animation
|
||||
|
||||
At subslide #touying-fn-wrapper((self: none) => str(self.subslide)), we can
|
||||
|
||||
use #uncover("2-")[`#uncover` function] for reserving space,
|
||||
|
||||
use #only("2-")[`#only` function] for not reserving space,
|
||||
|
||||
#alternatives[call `#only` multiple times \u{2717}][use `#alternatives` function #sym.checkmark] for choosing one of the alternatives.
|
||||
|
||||
|
||||
== Callback Style Animation
|
||||
|
||||
#slide(
|
||||
repeat: 3,
|
||||
self => [
|
||||
#let (uncover, only, alternatives) = utils.methods(self)
|
||||
|
||||
At subslide #self.subslide, we can
|
||||
|
||||
use #uncover("2-")[`#uncover` function] for reserving space,
|
||||
|
||||
use #only("2-")[`#only` function] for not reserving space,
|
||||
|
||||
#alternatives[call `#only` multiple times \u{2717}][use `#alternatives` function #sym.checkmark] for choosing one of the alternatives.
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
== Math Equation Animation
|
||||
|
||||
Equation with `pause`:
|
||||
|
||||
$
|
||||
f(x) &= pause x^2 + 2x + 1 \
|
||||
&= pause (x + 1)^2 \
|
||||
$
|
||||
|
||||
#meanwhile
|
||||
|
||||
Here, #pause we have the expression of $f(x)$.
|
||||
|
||||
#pause
|
||||
|
||||
By factorizing, we can obtain this result.
|
||||
|
||||
|
||||
== CeTZ Animation
|
||||
|
||||
CeTZ Animation in Touying:
|
||||
|
||||
#cetz-canvas({
|
||||
import cetz.draw: *
|
||||
|
||||
rect((0, 0), (5, 5))
|
||||
|
||||
(pause,)
|
||||
|
||||
rect((0, 0), (1, 1))
|
||||
rect((1, 1), (2, 2))
|
||||
rect((2, 2), (3, 3))
|
||||
|
||||
(pause,)
|
||||
|
||||
line((0, 0), (2.5, 2.5), name: "line")
|
||||
})
|
||||
|
||||
|
||||
== Fletcher Animation
|
||||
|
||||
Fletcher Animation in Touying:
|
||||
|
||||
#fletcher-diagram(
|
||||
node-stroke: .1em,
|
||||
node-fill: gradient.radial(
|
||||
blue.lighten(80%),
|
||||
blue,
|
||||
center: (30%, 20%),
|
||||
radius: 80%,
|
||||
),
|
||||
spacing: 4em,
|
||||
edge((-1, 0), "r", "-|>", `open(path)`, label-pos: 0, label-side: center),
|
||||
node((0, 0), `reading`, radius: 2em),
|
||||
edge((0, 0), (0, 0), `read()`, "--|>", bend: 130deg),
|
||||
pause,
|
||||
edge(`read()`, "-|>"),
|
||||
node((1, 0), `eof`, radius: 2em),
|
||||
pause,
|
||||
edge(`close()`, "-|>"),
|
||||
node((2, 0), `closed`, radius: 2em, extrude: (-2.5, 0)),
|
||||
edge((0, 0), (2, 0), `close()`, "-|>", bend: -40deg),
|
||||
)
|
||||
|
||||
|
||||
= Theorems
|
||||
|
||||
== Prime numbers
|
||||
|
||||
#definition[
|
||||
A natural number is called a #highlight[_prime number_] if it is greater
|
||||
than 1 and cannot be written as the product of two smaller natural numbers.
|
||||
]
|
||||
#example[
|
||||
The numbers $2$, $3$, and $17$ are prime.
|
||||
@cor_largest_prime shows that this list is not exhaustive!
|
||||
]
|
||||
|
||||
#theorem("Euclid")[
|
||||
There are infinitely many primes.
|
||||
]
|
||||
#proof[
|
||||
Suppose to the contrary that $p_1, p_2, dots, p_n$ is a finite enumeration
|
||||
of all primes. Set $P = p_1 p_2 dots p_n$. Since $P + 1$ is not in our list,
|
||||
it cannot be prime. Thus, some prime factor $p_j$ divides $P + 1$. Since
|
||||
$p_j$ also divides $P$, it must divide the difference $(P + 1) - P = 1$, a
|
||||
contradiction.
|
||||
]
|
||||
|
||||
#corollary[
|
||||
There is no largest prime number.
|
||||
] <cor_largest_prime>
|
||||
#corollary[
|
||||
There are infinitely many composite numbers.
|
||||
]
|
||||
|
||||
#theorem[
|
||||
There are arbitrarily long stretches of composite numbers.
|
||||
]
|
||||
|
||||
#proof[
|
||||
For any $n > 2$, consider $
|
||||
n! + 2, quad n! + 3, quad ..., quad n! + n #qedhere
|
||||
$
|
||||
]
|
||||
|
||||
|
||||
= Others
|
||||
|
||||
== Side-by-side
|
||||
|
||||
#slide(composer: (1fr, 1fr))[
|
||||
First column.
|
||||
][
|
||||
Second column.
|
||||
]
|
||||
|
||||
|
||||
== Multiple Pages
|
||||
|
||||
#lorem(200)
|
||||
|
||||
|
||||
#show: appendix
|
||||
|
||||
= Appendix
|
||||
|
||||
== Appendix
|
||||
|
||||
Please pay attention to the current slide number.
|
||||
@ -3,4 +3,5 @@
|
||||
#import "@preview/headcount:0.1.0"
|
||||
#import "@preview/i-figured:0.2.4"
|
||||
#import "@preview/tablex:0.0.9"
|
||||
#import "@preview/touying:0.5.5"
|
||||
#import "@preview/wordometer:0.1.3"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user