79 lines
1.1 KiB
Typst
79 lines
1.1 KiB
Typst
|
#import "@preview/cetz:0.3.1": canvas, draw
|
||
|
#import "blobs.typ": draw-blob
|
||
|
|
||
|
#set page(width: auto, height: auto, margin: 1cm)
|
||
|
|
||
|
#canvas({
|
||
|
draw-blob(
|
||
|
2, (0, 0), 1.5,
|
||
|
stroke: green,
|
||
|
name: "blob1"
|
||
|
)
|
||
|
|
||
|
draw-blob(
|
||
|
8, (5, 0), 1.5,
|
||
|
n-pts: 10,
|
||
|
stroke: orange,
|
||
|
name: "blob2"
|
||
|
)
|
||
|
|
||
|
draw.circle(
|
||
|
"blob1.center",
|
||
|
radius: .05,
|
||
|
fill: black,
|
||
|
stroke: none,
|
||
|
name: "x"
|
||
|
)
|
||
|
|
||
|
draw.circle(
|
||
|
"blob2.center",
|
||
|
radius: .05,
|
||
|
fill: black,
|
||
|
stroke: none,
|
||
|
name: "y"
|
||
|
)
|
||
|
|
||
|
draw.content(
|
||
|
"x",
|
||
|
[$arrow(x)$],
|
||
|
anchor: "east",
|
||
|
padding: 3pt
|
||
|
)
|
||
|
|
||
|
draw.content(
|
||
|
"y",
|
||
|
[$arrow(y)$],
|
||
|
anchor: "west",
|
||
|
padding: 3pt
|
||
|
)
|
||
|
|
||
|
draw.content(
|
||
|
(-1.2, .8),
|
||
|
text(fill: green)[$RR^n$]
|
||
|
)
|
||
|
|
||
|
draw.content(
|
||
|
(4.6, 1.4),
|
||
|
text(fill: orange)[$RR^m$]
|
||
|
)
|
||
|
|
||
|
let mid = (2.5, .5)
|
||
|
|
||
|
draw.bezier-through(
|
||
|
"x.north-east", mid, "y.north-west",
|
||
|
stroke: blue + .5pt,
|
||
|
mark: (end: ">", fill: blue),
|
||
|
name: "arrow"
|
||
|
)
|
||
|
draw.content(
|
||
|
mid,
|
||
|
[$f$],
|
||
|
anchor: "south",
|
||
|
padding: 3pt
|
||
|
)
|
||
|
|
||
|
draw.content(
|
||
|
(2.5, -1),
|
||
|
text(fill: blue)[$f: RR^n -> RR^m$]
|
||
|
)
|
||
|
})
|