diff --git a/docs/images/chapter-assets/circles/image-20210417122514664.png b/docs/images/chapter-assets/circles/image-20210417122514664.png new file mode 100644 index 00000000..64f6aff1 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417122514664.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417122604560.png b/docs/images/chapter-assets/circles/image-20210417122604560.png new file mode 100644 index 00000000..184a75b5 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417122604560.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417122645625.png b/docs/images/chapter-assets/circles/image-20210417122645625.png new file mode 100644 index 00000000..8629fa57 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417122645625.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417125017892.png b/docs/images/chapter-assets/circles/image-20210417125017892.png new file mode 100644 index 00000000..0eb025e1 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417125017892.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417125142892.png b/docs/images/chapter-assets/circles/image-20210417125142892.png new file mode 100644 index 00000000..48fc2248 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417125142892.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417125217128.png b/docs/images/chapter-assets/circles/image-20210417125217128.png new file mode 100644 index 00000000..13db2096 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417125217128.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417165543902.png b/docs/images/chapter-assets/circles/image-20210417165543902.png new file mode 100644 index 00000000..ca266aa4 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417165543902.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417170131557.png b/docs/images/chapter-assets/circles/image-20210417170131557.png new file mode 100644 index 00000000..d4d60645 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417170131557.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417173811587.png b/docs/images/chapter-assets/circles/image-20210417173811587.png new file mode 100644 index 00000000..9fc97203 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417173811587.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417174019035.png b/docs/images/chapter-assets/circles/image-20210417174019035.png new file mode 100644 index 00000000..5c0081da Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417174019035.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417174100036.png b/docs/images/chapter-assets/circles/image-20210417174100036.png new file mode 100644 index 00000000..0b4aee31 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417174100036.png differ diff --git a/docs/images/chapter-assets/circles/image-20210417174215876.png b/docs/images/chapter-assets/circles/image-20210417174215876.png new file mode 100644 index 00000000..26fcda62 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210417174215876.png differ diff --git a/docs/images/chapter-assets/circles/image-20210418111929371.png b/docs/images/chapter-assets/circles/image-20210418111929371.png new file mode 100644 index 00000000..4c20984b Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210418111929371.png differ diff --git a/docs/images/chapter-assets/circles/image-20210418112008676.png b/docs/images/chapter-assets/circles/image-20210418112008676.png new file mode 100644 index 00000000..8196344d Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210418112008676.png differ diff --git a/docs/images/chapter-assets/circles/image-20210418112038613.png b/docs/images/chapter-assets/circles/image-20210418112038613.png new file mode 100644 index 00000000..84c54026 Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210418112038613.png differ diff --git a/docs/images/chapter-assets/circles/image-20210419085430711.png b/docs/images/chapter-assets/circles/image-20210419085430711.png new file mode 100644 index 00000000..cfaf2aba Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210419085430711.png differ diff --git a/docs/images/chapter-assets/circles/image-20210419101805150.png b/docs/images/chapter-assets/circles/image-20210419101805150.png new file mode 100644 index 00000000..7ff246fd Binary files /dev/null and b/docs/images/chapter-assets/circles/image-20210419101805150.png differ diff --git a/docs/images/chapters/circles/12f78070db3292742f66cf3cd9c7ed92.png b/docs/images/chapters/circles/12f78070db3292742f66cf3cd9c7ed92.png new file mode 100644 index 00000000..6e77186e Binary files /dev/null and b/docs/images/chapters/circles/12f78070db3292742f66cf3cd9c7ed92.png differ diff --git a/docs/images/chapters/circles/222d374252584ac37d967e3ea0f8f28b.svg b/docs/images/chapters/circles/222d374252584ac37d967e3ea0f8f28b.svg new file mode 100644 index 00000000..44228cc7 --- /dev/null +++ b/docs/images/chapters/circles/222d374252584ac37d967e3ea0f8f28b.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/22bda43c696b48e49a2aa83f0c4a4a0e.png b/docs/images/chapters/circles/22bda43c696b48e49a2aa83f0c4a4a0e.png new file mode 100644 index 00000000..07525b85 Binary files /dev/null and b/docs/images/chapters/circles/22bda43c696b48e49a2aa83f0c4a4a0e.png differ diff --git a/docs/images/chapters/circles/23d4cd81c759c5374773fae149207c5b.svg b/docs/images/chapters/circles/23d4cd81c759c5374773fae149207c5b.svg new file mode 100644 index 00000000..43d9a205 --- /dev/null +++ b/docs/images/chapters/circles/23d4cd81c759c5374773fae149207c5b.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/474c72b5d1ad5c154d79312c15aee47a.svg b/docs/images/chapters/circles/474c72b5d1ad5c154d79312c15aee47a.svg new file mode 100644 index 00000000..22939061 --- /dev/null +++ b/docs/images/chapters/circles/474c72b5d1ad5c154d79312c15aee47a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/485d678b1d63ed7a4c7c8bb282467f02.svg b/docs/images/chapters/circles/485d678b1d63ed7a4c7c8bb282467f02.svg new file mode 100644 index 00000000..8706225d --- /dev/null +++ b/docs/images/chapters/circles/485d678b1d63ed7a4c7c8bb282467f02.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/571246ffef745298873a78473257d871.png b/docs/images/chapters/circles/571246ffef745298873a78473257d871.png new file mode 100644 index 00000000..6e77186e Binary files /dev/null and b/docs/images/chapters/circles/571246ffef745298873a78473257d871.png differ diff --git a/docs/images/chapters/circles/5ef0824098ef73efbd89accb8db408e8.png b/docs/images/chapters/circles/5ef0824098ef73efbd89accb8db408e8.png new file mode 100644 index 00000000..fe6c01c0 Binary files /dev/null and b/docs/images/chapters/circles/5ef0824098ef73efbd89accb8db408e8.png differ diff --git a/docs/images/chapters/circles/6e455a6733dbca47acc0a36e7e490ba6.svg b/docs/images/chapters/circles/6e455a6733dbca47acc0a36e7e490ba6.svg new file mode 100644 index 00000000..005b8a7d --- /dev/null +++ b/docs/images/chapters/circles/6e455a6733dbca47acc0a36e7e490ba6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/9e19c65e23c32c802d2d77edb9812122.svg b/docs/images/chapters/circles/9e19c65e23c32c802d2d77edb9812122.svg new file mode 100644 index 00000000..c738b623 --- /dev/null +++ b/docs/images/chapters/circles/9e19c65e23c32c802d2d77edb9812122.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/b5799015ebae3ab9b6712106b3b20ee6.svg b/docs/images/chapters/circles/b5799015ebae3ab9b6712106b3b20ee6.svg new file mode 100644 index 00000000..a2eefe40 --- /dev/null +++ b/docs/images/chapters/circles/b5799015ebae3ab9b6712106b3b20ee6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/cf8fc61992d2a75416894dee46ee5ffe.svg b/docs/images/chapters/circles/cf8fc61992d2a75416894dee46ee5ffe.svg new file mode 100644 index 00000000..c65a49ad --- /dev/null +++ b/docs/images/chapters/circles/cf8fc61992d2a75416894dee46ee5ffe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles/e1fbb58c3730b2f4a378e39c8dc5e61f.svg b/docs/images/chapters/circles/e1fbb58c3730b2f4a378e39c8dc5e61f.svg new file mode 100644 index 00000000..60750b92 --- /dev/null +++ b/docs/images/chapters/circles/e1fbb58c3730b2f4a378e39c8dc5e61f.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/046e0bec7cc3d8a502b2f76b4722be2d.svg b/docs/images/chapters/circles_cubic/046e0bec7cc3d8a502b2f76b4722be2d.svg deleted file mode 100644 index a4cb1fd1..00000000 --- a/docs/images/chapters/circles_cubic/046e0bec7cc3d8a502b2f76b4722be2d.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/065efe85cac2f359ea4d5d4bae94da97.svg b/docs/images/chapters/circles_cubic/065efe85cac2f359ea4d5d4bae94da97.svg deleted file mode 100644 index 0eb401c9..00000000 --- a/docs/images/chapters/circles_cubic/065efe85cac2f359ea4d5d4bae94da97.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/0b4c1e8f1f7a9c1292787f127ddb1624.svg b/docs/images/chapters/circles_cubic/0b4c1e8f1f7a9c1292787f127ddb1624.svg deleted file mode 100644 index 9299a7ca..00000000 --- a/docs/images/chapters/circles_cubic/0b4c1e8f1f7a9c1292787f127ddb1624.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/2ba4e0e2dbbdf3ea7dbd9cff3e049d0d.svg b/docs/images/chapters/circles_cubic/2ba4e0e2dbbdf3ea7dbd9cff3e049d0d.svg deleted file mode 100644 index 426522ad..00000000 --- a/docs/images/chapters/circles_cubic/2ba4e0e2dbbdf3ea7dbd9cff3e049d0d.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/2d9df7ddd2aa223a951016b93d9620c2.svg b/docs/images/chapters/circles_cubic/2d9df7ddd2aa223a951016b93d9620c2.svg deleted file mode 100644 index 6c0e7823..00000000 --- a/docs/images/chapters/circles_cubic/2d9df7ddd2aa223a951016b93d9620c2.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/459c037fb92685566d624f81a298e9c8.svg b/docs/images/chapters/circles_cubic/459c037fb92685566d624f81a298e9c8.svg deleted file mode 100644 index a97cca3a..00000000 --- a/docs/images/chapters/circles_cubic/459c037fb92685566d624f81a298e9c8.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/496c0ee8945080a32bc02f78bc83ad43.svg b/docs/images/chapters/circles_cubic/496c0ee8945080a32bc02f78bc83ad43.svg deleted file mode 100644 index c6bc08b5..00000000 --- a/docs/images/chapters/circles_cubic/496c0ee8945080a32bc02f78bc83ad43.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/63f35fb58d3571200ac6ccea0384b9d7.png b/docs/images/chapters/circles_cubic/63f35fb58d3571200ac6ccea0384b9d7.png deleted file mode 100644 index b2f6adb9..00000000 Binary files a/docs/images/chapters/circles_cubic/63f35fb58d3571200ac6ccea0384b9d7.png and /dev/null differ diff --git a/docs/images/chapters/circles_cubic/6a14e5a71dd9e0cefe158640eabb8696.svg b/docs/images/chapters/circles_cubic/6a14e5a71dd9e0cefe158640eabb8696.svg deleted file mode 100644 index b5d632c4..00000000 --- a/docs/images/chapters/circles_cubic/6a14e5a71dd9e0cefe158640eabb8696.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/8b4e1d0a62380ed011f27c645ed13b28.svg b/docs/images/chapters/circles_cubic/8b4e1d0a62380ed011f27c645ed13b28.svg deleted file mode 100644 index dea287d7..00000000 --- a/docs/images/chapters/circles_cubic/8b4e1d0a62380ed011f27c645ed13b28.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/bc884416145a846cebddc8c5d13f147f.svg b/docs/images/chapters/circles_cubic/bc884416145a846cebddc8c5d13f147f.svg deleted file mode 100644 index 08f5460d..00000000 --- a/docs/images/chapters/circles_cubic/bc884416145a846cebddc8c5d13f147f.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/c509dc6fecd7992cb45a0b4d8f1bd001.svg b/docs/images/chapters/circles_cubic/c509dc6fecd7992cb45a0b4d8f1bd001.svg deleted file mode 100644 index d9bc14e1..00000000 --- a/docs/images/chapters/circles_cubic/c509dc6fecd7992cb45a0b4d8f1bd001.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/d28eb43a1b34befb7659dcdfb3a9e718.svg b/docs/images/chapters/circles_cubic/d28eb43a1b34befb7659dcdfb3a9e718.svg deleted file mode 100644 index 04e8854c..00000000 --- a/docs/images/chapters/circles_cubic/d28eb43a1b34befb7659dcdfb3a9e718.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/ecacec0eb2bbe72e14b9008d854fbb06.png b/docs/images/chapters/circles_cubic/ecacec0eb2bbe72e14b9008d854fbb06.png deleted file mode 100644 index 53a76dc3..00000000 Binary files a/docs/images/chapters/circles_cubic/ecacec0eb2bbe72e14b9008d854fbb06.png and /dev/null differ diff --git a/docs/images/chapters/circles_cubic/eeff3b36af960053cb4eb692abe36cd8.svg b/docs/images/chapters/circles_cubic/eeff3b36af960053cb4eb692abe36cd8.svg deleted file mode 100644 index a5458b6c..00000000 --- a/docs/images/chapters/circles_cubic/eeff3b36af960053cb4eb692abe36cd8.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/chapters/circles_cubic/fa5d308b0b50400fbae1411f390bc7ce.svg b/docs/images/chapters/circles_cubic/fa5d308b0b50400fbae1411f390bc7ce.svg deleted file mode 100644 index 7de57979..00000000 --- a/docs/images/chapters/circles_cubic/fa5d308b0b50400fbae1411f390bc7ce.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/images/snippets/circles/222d374252584ac37d967e3ea0f8f28b.ascii b/docs/images/snippets/circles/222d374252584ac37d967e3ea0f8f28b.ascii new file mode 100644 index 00000000..dc81ed32 --- /dev/null +++ b/docs/images/snippets/circles/222d374252584ac37d967e3ea0f8f28b.ascii @@ -0,0 +1,34 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + d(θ)= |B - P | + t θ + ─ + 2 + ╭ 3 1 ╮ ╭ ╭ θ ╮ ╮ + │ ─ + ─cos(θ) │ │ cos│ ─ │ │ + = |│ 4 4 │ - │ ╰ 2 ╯ │| + │ 1 ╭ θ ╮ 1 │ │ ╭ θ ╮ │ + │ ─tan│ ─ │ + ─sin(θ) │ │ sin│ ─ │ │ + ╰ 2 ╰ 2 ╯ 4 ╯ ╰ ╰ 2 ╯ ╯ + ╭ 3 1 ╭ θ ╮ ╮ + │ ─ + ─cos(θ) - cos│ ─ │ │ + = |│ 4 4 ╰ 2 ╯ │| + │ 1 ╭ θ ╮ 1 ╭ θ ╮ │ + │ ─tan│ ─ │ + ─sin(θ) - sin│ ─ │ │ + ╰ 2 ╰ 2 ╯ 4 ╰ 2 ╯ ╯ + ╭ 4╭ θ ╮ ╮ + │ 2sin │ ─ │ │ + = |│ ╰ 4 ╯ │| + │ 1 ╭ θ ╮ 1 ╭ θ ╮ │ + │ ─tan│ ─ │ + ─sin(θ) - sin│ ─ │ │ + ╰ 2 ╰ 2 ╯ 4 ╰ 2 ╯ ╯ + ┌─────────────────────────────────────────────────────┐ + │╭ 4╭ θ ╮ ╮2 ╭ 1 ╭ θ ╮ 1 ╭ θ ╮ ╮2 + = ││ 2sin │ ─ │ │ + │ ─tan│ ─ │ + ─sin(θ) - sin│ ─ │ │ + ⟍│╰ ╰ 4 ╯ ╯ ╰ 2 ╰ 2 ╯ 4 ╰ 2 ╯ ╯ + + = we give this to Wolfram Alpha because why would we simplify this by hand? + + 4╭ θ ╮ ╭ θ ╮ + = 2sin │ ─ │ · |sec│ ─ │| + ╰ 4 ╯ ╰ 2 ╯ diff --git a/docs/images/snippets/circles/23d4cd81c759c5374773fae149207c5b.ascii b/docs/images/snippets/circles/23d4cd81c759c5374773fae149207c5b.ascii new file mode 100644 index 00000000..b1c3f3a4 --- /dev/null +++ b/docs/images/snippets/circles/23d4cd81c759c5374773fae149207c5b.ascii @@ -0,0 +1,8 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + ╭ 1 2 cos(θ) ╮ ╭ 3 1 ╮ + │ ─ + ─ + ────── │ │ ─ + ─cos(θ) │ + B = │ 4 4 4 │ = │ 4 4 │ + 1 │ 0 2k sin(θ) │ │ 1 ╭ θ ╮ 1 │ + t=─ │ ─ + ── + ────── │ │ ─tan│ ─ │ + ─sin(θ) │ + 2 ╰ 4 4 4 ╯ ╰ 2 ╰ 2 ╯ 4 ╯ diff --git a/docs/images/snippets/circles/474c72b5d1ad5c154d79312c15aee47a.ascii b/docs/images/snippets/circles/474c72b5d1ad5c154d79312c15aee47a.ascii new file mode 100644 index 00000000..0b51cdd6 --- /dev/null +++ b/docs/images/snippets/circles/474c72b5d1ad5c154d79312c15aee47a.ascii @@ -0,0 +1,17 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + 4╭ θ ╮ ╭ θ ╮ + = 2sin │ ─ │ · sec│ ─ │ + ╰ 4 ╯ ╰ 2 ╯ + 4╭ θ ╮ 1 + = 2sin │ ─ │ · ──────── + ╰ 4 ╯ ╭ θ ╮ + cos│ ─ │ + ╰ 2 ╯ + 4╭ θ ╮ + sin │ ─ │ + ╰ 4 ╯ + d(θ)= 2───────── + ╭ θ ╮ + cos│ ─ │ + ╰ 2 ╯ diff --git a/docs/images/snippets/circles/485d678b1d63ed7a4c7c8bb282467f02.ascii b/docs/images/snippets/circles/485d678b1d63ed7a4c7c8bb282467f02.ascii new file mode 100644 index 00000000..679bc7c2 --- /dev/null +++ b/docs/images/snippets/circles/485d678b1d63ed7a4c7c8bb282467f02.ascii @@ -0,0 +1,6 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + P = S + k · (0, 1) = (1,0) + (0,k) + 2 relative to start + P = E + k · (E , -E ) = (cos(θ), sin(θ)) + k · (sin(θ), -cos(θ)) + 2 relative to end y x diff --git a/docs/images/snippets/circles/6e455a6733dbca47acc0a36e7e490ba6.ascii b/docs/images/snippets/circles/6e455a6733dbca47acc0a36e7e490ba6.ascii new file mode 100644 index 00000000..a259346a --- /dev/null +++ b/docs/images/snippets/circles/6e455a6733dbca47acc0a36e7e490ba6.ascii @@ -0,0 +1,9 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + ╭ ┌────────────────┐ ╮ + │ │ ┌─────┐ │ + │ │ │ 2 │ + -1 │ ⟍│2 + ε - ⟍│2ε+ε │ + θ = f(ε) = 4 · cos │ ─────────────────── │ + │ ┌─┐ │ + ╰ ⟍│2 ╯ diff --git a/docs/images/snippets/circles/9e19c65e23c32c802d2d77edb9812122.ascii b/docs/images/snippets/circles/9e19c65e23c32c802d2d77edb9812122.ascii new file mode 100644 index 00000000..277f38bc --- /dev/null +++ b/docs/images/snippets/circles/9e19c65e23c32c802d2d77edb9812122.ascii @@ -0,0 +1,6 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + P = (1, 0) + 1 + P = (cos(θ), sin(θ)) + 3 diff --git a/docs/images/snippets/circles/b5799015ebae3ab9b6712106b3b20ee6.ascii b/docs/images/snippets/circles/b5799015ebae3ab9b6712106b3b20ee6.ascii new file mode 100644 index 00000000..207829d9 --- /dev/null +++ b/docs/images/snippets/circles/b5799015ebae3ab9b6712106b3b20ee6.ascii @@ -0,0 +1,8 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + P = (1,0) + (0,k) = 1 + 2 x x + x + P = (cos(θ), sin(θ)) + k · (sin(θ), -cos(θ)) = cos(θ) + k · sin(θ) + 2 x x + x diff --git a/docs/images/snippets/circles/cf8fc61992d2a75416894dee46ee5ffe.ascii b/docs/images/snippets/circles/cf8fc61992d2a75416894dee46ee5ffe.ascii new file mode 100644 index 00000000..6049e647 --- /dev/null +++ b/docs/images/snippets/circles/cf8fc61992d2a75416894dee46ee5ffe.ascii @@ -0,0 +1,10 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + cos(θ) + k · sin(θ)= 1 + k · sin(θ)= 1 - cos(θ) + 1 - cos(θ) + k= ────────── + sin(θ) + ╭ θ ╮ + k= tan│ ─ │ + ╰ 2 ╯ diff --git a/docs/images/snippets/circles/e1fbb58c3730b2f4a378e39c8dc5e61f.ascii b/docs/images/snippets/circles/e1fbb58c3730b2f4a378e39c8dc5e61f.ascii new file mode 100644 index 00000000..1d1ab917 --- /dev/null +++ b/docs/images/snippets/circles/e1fbb58c3730b2f4a378e39c8dc5e61f.ascii @@ -0,0 +1,5 @@ +\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math + + ╭ ╭ θ ╮ ╮ + P = │ 1, tan│ ─ │ │ + 2 ╰ ╰ 2 ╯ ╯ diff --git a/docs/images/snippets/circles_cubic/046e0bec7cc3d8a502b2f76b4722be2d.ascii b/docs/images/snippets/circles_cubic/046e0bec7cc3d8a502b2f76b4722be2d.ascii deleted file mode 100644 index d221682d..00000000 --- a/docs/images/snippets/circles_cubic/046e0bec7cc3d8a502b2f76b4722be2d.ascii +++ /dev/null @@ -1,8 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - ╭ 4 - │ \vecv = {C,A} = ─ · (B - C ) - ╡ x x 3 x x - │ 4 - │ \vecv = {C,A} = ─ · (B - C ) - ╰ y y 3 y y diff --git a/docs/images/snippets/circles_cubic/065efe85cac2f359ea4d5d4bae94da97.ascii b/docs/images/snippets/circles_cubic/065efe85cac2f359ea4d5d4bae94da97.ascii deleted file mode 100644 index 4980b769..00000000 --- a/docs/images/snippets/circles_cubic/065efe85cac2f359ea4d5d4bae94da97.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - 4 ╭ φ ╮ - C = ┌ cos(φ) + f · sin(φ) ┐ , with f = ─ tan │ ─ │ - 2 └ sin(φ) - f · cos(φ) ┘ 3 ╰ 4 ╯ diff --git a/docs/images/snippets/circles_cubic/0b4c1e8f1f7a9c1292787f127ddb1624.ascii b/docs/images/snippets/circles_cubic/0b4c1e8f1f7a9c1292787f127ddb1624.ascii deleted file mode 100644 index 7902bfe6..00000000 --- a/docs/images/snippets/circles_cubic/0b4c1e8f1f7a9c1292787f127ddb1624.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - C = S + a · \begin{pmatrix} 0 - 1 - 1 \end{pmatrix} diff --git a/docs/images/snippets/circles_cubic/2ba4e0e2dbbdf3ea7dbd9cff3e049d0d.ascii b/docs/images/snippets/circles_cubic/2ba4e0e2dbbdf3ea7dbd9cff3e049d0d.ascii deleted file mode 100644 index 116616fe..00000000 --- a/docs/images/snippets/circles_cubic/2ba4e0e2dbbdf3ea7dbd9cff3e049d0d.ascii +++ /dev/null @@ -1,8 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - ╭ ╭ φ ╮ 2╭ φ ╮ - │ B - C = cos│ ─ │ - cos │ ─ │ - ╡ x x ╰ 2 ╯ ╰ 2 ╯ - │ ╭ φ ╮ φ ╭ φ ╮ ╭ φ ╮ sin(φ) - │ B - C = sin│ ─ │ - cos(─) · sin│ ─ │ = sin│ ─ │ - ────── - ╰ y y ╰ 2 ╯ 2 ╰ 2 ╯ ╰ 2 ╯ 2 diff --git a/docs/images/snippets/circles_cubic/2d9df7ddd2aa223a951016b93d9620c2.ascii b/docs/images/snippets/circles_cubic/2d9df7ddd2aa223a951016b93d9620c2.ascii deleted file mode 100644 index f0e6296a..00000000 --- a/docs/images/snippets/circles_cubic/2d9df7ddd2aa223a951016b93d9620c2.ascii +++ /dev/null @@ -1,4 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - S = (1, 0) , \ C = (1, 0.55228) , \ C = (0.55228 , 1) , \ E = (0, 1) - 1 2 diff --git a/docs/images/snippets/circles_cubic/329dc34299d2fdb3c5f17828e3a23da0.ascii b/docs/images/snippets/circles_cubic/329dc34299d2fdb3c5f17828e3a23da0.ascii deleted file mode 100644 index 62d79a9f..00000000 --- a/docs/images/snippets/circles_cubic/329dc34299d2fdb3c5f17828e3a23da0.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - 4 ╭ φ ╮ - C = ┌ cos(φ) + f · sin(φ) ┐, with f = ─ tan │ ─ │ - 2 └ sin(φ) - f · cos(φ) ┘ 3 ╰ 4 ╯ diff --git a/docs/images/snippets/circles_cubic/38b58b3c759b9bf340a3cf3de8bc599e.ascii b/docs/images/snippets/circles_cubic/38b58b3c759b9bf340a3cf3de8bc599e.ascii deleted file mode 100644 index f8b6ebea..00000000 --- a/docs/images/snippets/circles_cubic/38b58b3c759b9bf340a3cf3de8bc599e.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - 4 ╭ φ ╮ - C = ┌ 1 ┐, with f = ─ tan │ ─ │ - 1 └ f ┘ 3 ╰ 4 ╯ diff --git a/docs/images/snippets/circles_cubic/459c037fb92685566d624f81a298e9c8.ascii b/docs/images/snippets/circles_cubic/459c037fb92685566d624f81a298e9c8.ascii deleted file mode 100644 index 2c16d5aa..00000000 --- a/docs/images/snippets/circles_cubic/459c037fb92685566d624f81a298e9c8.ascii +++ /dev/null @@ -1,18 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - E' = -sin(φ) , - x - E' = cos(φ) , - y - ┌────────────────────┐ - │ 2 2 - ||E'|| = ⟍│(-sin(φ)) + cos (φ) = 1 , - - ╭ E ' - │ x 4 ╭ φ ╮ - │ C x = E - C · ────── = cos(φ) + C · sin(φ) = cos(φ) + ─ tan │ ─ │ · sin(φ) - ╡ 2 x 1y ||E'|| 1y 3 ╰ 4 ╯ - │ E ' - │ y 4 ╭ φ ╮ - │ C y = E - C · ────── = sin(φ) - C · cos(φ) = sin(φ) - ─ tan │ ─ │ · cos(φ) - ╰ 2 y 1y ||E'|| 1y 3 ╰ 4 ╯ diff --git a/docs/images/snippets/circles_cubic/496c0ee8945080a32bc02f78bc83ad43.ascii b/docs/images/snippets/circles_cubic/496c0ee8945080a32bc02f78bc83ad43.ascii deleted file mode 100644 index 1c87ca6d..00000000 --- a/docs/images/snippets/circles_cubic/496c0ee8945080a32bc02f78bc83ad43.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - 4 ╭ φ ╮ - C = ┌ 1 ┐ , with f = ─ tan │ ─ │ - 1 └ f ┘ 3 ╰ 4 ╯ diff --git a/docs/images/snippets/circles_cubic/6a14e5a71dd9e0cefe158640eabb8696.ascii b/docs/images/snippets/circles_cubic/6a14e5a71dd9e0cefe158640eabb8696.ascii deleted file mode 100644 index c3569488..00000000 --- a/docs/images/snippets/circles_cubic/6a14e5a71dd9e0cefe158640eabb8696.ascii +++ /dev/null @@ -1,6 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - ╭ ┌─┐ ╮ ╭ ┌─┐ ╮ - │ ⟍│2 -1 │ │ ⟍│2 -1 │ - S = (1, 0) , \ C = │ 1, 4 ────── │ , \ C = │ 4 ────── , 1 │ , \ E = (0, 1) - 1 ╰ 3 ╯ 2 ╰ 3 ╯ diff --git a/docs/images/snippets/circles_cubic/750e2c874fb58237608ebade1589fccc.ascii b/docs/images/snippets/circles_cubic/750e2c874fb58237608ebade1589fccc.ascii deleted file mode 100644 index 73dc9973..00000000 --- a/docs/images/snippets/circles_cubic/750e2c874fb58237608ebade1589fccc.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - ╭ 1 ╮ 1 4 - ||A,C|| = d + d = d + d · ratio │ ─ │ = d + ─d = ─d - 2 1 2 2 3 ╰ 2 ╯ 2 3 2 3 2 diff --git a/docs/images/snippets/circles_cubic/8b4e1d0a62380ed011f27c645ed13b28.ascii b/docs/images/snippets/circles_cubic/8b4e1d0a62380ed011f27c645ed13b28.ascii deleted file mode 100644 index 32b2c66c..00000000 --- a/docs/images/snippets/circles_cubic/8b4e1d0a62380ed011f27c645ed13b28.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - φ φ - P = cos(─) , \ P = sin(─) - x 2 y 2 diff --git a/docs/images/snippets/circles_cubic/bc884416145a846cebddc8c5d13f147f.ascii b/docs/images/snippets/circles_cubic/bc884416145a846cebddc8c5d13f147f.ascii deleted file mode 100644 index 6c2cd4ca..00000000 --- a/docs/images/snippets/circles_cubic/bc884416145a846cebddc8c5d13f147f.ascii +++ /dev/null @@ -1,11 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - φ - l = cos(─) , - 2 - ╭ ╭ φ ╮ 2╭ φ ╮ - │ C = l · cos│ ─ │ = cos │ ─ │ , - ╡ x ╰ 2 ╯ ╰ 2 ╯ - │ ╭ φ ╮ φ ╭ φ ╮ - │ C = l · sin│ ─ │ = cos(─) · sin│ ─ │ , - ╰ y ╰ 2 ╯ 2 ╰ 2 ╯ diff --git a/docs/images/snippets/circles_cubic/c509dc6fecd7992cb45a0b4d8f1bd001.ascii b/docs/images/snippets/circles_cubic/c509dc6fecd7992cb45a0b4d8f1bd001.ascii deleted file mode 100644 index d11e31d6..00000000 --- a/docs/images/snippets/circles_cubic/c509dc6fecd7992cb45a0b4d8f1bd001.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - ╭ 1 ╮ 1 4 - ||A,C|| = d + d = d + d · ratio │ ─ │ = d + ─d = ─d - 2 1 2 2 3 ╰ 2 ╯ 2 3 2 3 2 diff --git a/docs/images/snippets/circles_cubic/d28eb43a1b34befb7659dcdfb3a9e718.ascii b/docs/images/snippets/circles_cubic/d28eb43a1b34befb7659dcdfb3a9e718.ascii deleted file mode 100644 index 0ec63018..00000000 --- a/docs/images/snippets/circles_cubic/d28eb43a1b34befb7659dcdfb3a9e718.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - C = E + a · \begin{pmatrix} sin(φ) - 2 - cos(φ) \end{pmatrix} diff --git a/docs/images/snippets/circles_cubic/eeff3b36af960053cb4eb692abe36cd8.ascii b/docs/images/snippets/circles_cubic/eeff3b36af960053cb4eb692abe36cd8.ascii deleted file mode 100644 index 46a53bf1..00000000 --- a/docs/images/snippets/circles_cubic/eeff3b36af960053cb4eb692abe36cd8.ascii +++ /dev/null @@ -1,5 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - S = \begin{pmatrix} 1 - 0 \end{pmatrix} , \ E = \begin{pmatrix} cos(φ) - sin(φ) \end{pmatrix} diff --git a/docs/images/snippets/circles_cubic/fa5d308b0b50400fbae1411f390bc7ce.ascii b/docs/images/snippets/circles_cubic/fa5d308b0b50400fbae1411f390bc7ce.ascii deleted file mode 100644 index 1a851d76..00000000 --- a/docs/images/snippets/circles_cubic/fa5d308b0b50400fbae1411f390bc7ce.ascii +++ /dev/null @@ -1,12 +0,0 @@ -\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math - - ╭ C = 1 - │ 1x - │ ┌───────────────┐ - │ │ 2 2 - ╡ │\vecv + \vecv - │ d ⟍│ x y 4 ╭ φ ╮ - │ C = ──────── = ────────────────── = ─ tan │ ─ │ - │ 1y ╭ φ ╮ ╭ φ ╮ 3 ╰ 4 ╯ - │ sin│ ─ │ sin│ ─ │ - ╰ ╰ 2 ╯ ╰ 2 ╯ diff --git a/docs/index.html b/docs/index.html index ecc8e873..57507732 100644 --- a/docs/index.html +++ b/docs/index.html @@ -38,7 +38,7 @@ - + @@ -167,25 +167,26 @@ sponsoring the site! I am more than happy to work with your finance department on sponsorship invoicing and recognition.

-
-
-

- Bitcoin donations: -

-

- If you prefer to donate via Bitcoin, you can donate either directly to - 3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu - or use the QR code on the right, if that's the kind of convenience you prefer =) -

-
-
- - - -
-
+
@@ -5894,13 +5895,9 @@ lli = function(line1, line2): >,C2.2). -
  • - For each pair, check whether their bounding boxes overlap. -
      -
    1. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
    2. -
    3. If there is overlap, rerun all steps for this pair.
    4. -
    -
  • +
  • For each pair, check whether their bounding boxes overlap.
  • +
  • If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
  • +
  • If there is overlap, rerun all steps for this pair.
  • Once the sub-curves we form are so small that they effectively occupy sub-pixel areas, we consider an intersection found, noting that we might have a cluster of multiple intersections at the sub-pixel level, out of which we pick one to act as "found" t value @@ -9577,13 +9574,13 @@ radialError(radius, points[]):

    1. We start with low=0, mid=0.5 and high=1
    2. -
    3. - That'll fail, so we retry with the interval halved: {0, 0.25, 0.5} -
        -
      • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
      • -
      • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
      • -
      -
    4. +
    5. That'll fail, so we retry with the interval halved: {0, 0.25, 0.5}
    6. +
    + +
    1. We keep doing this over and over until we have two arcs, in sequence, of which the first arc is good, and the second arc is bad. When we find that pair, we've found the boundary between a good approximation and a bad approximation, and we pick the good arc. diff --git a/docs/ja-JP/index.html b/docs/ja-JP/index.html index cfcae011..ee6426db 100644 --- a/docs/ja-JP/index.html +++ b/docs/ja-JP/index.html @@ -41,7 +41,7 @@ - + @@ -170,25 +170,26 @@ sponsoring the site! I am more than happy to work with your finance department on sponsorship invoicing and recognition.

      -
      -
      -

      - Bitcoin donations: -

      -

      - If you prefer to donate via Bitcoin, you can donate either directly to - 3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu - or use the QR code on the right, if that's the kind of convenience you prefer =) -

      -
      -
      - - - -
      -
      +
      @@ -6000,13 +6001,9 @@ lli = function(line1, line2): >,C2.2).
    2. -
    3. - For each pair, check whether their bounding boxes overlap. -
        -
      1. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
      2. -
      3. If there is overlap, rerun all steps for this pair.
      4. -
      -
    4. +
    5. For each pair, check whether their bounding boxes overlap.
    6. +
    7. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
    8. +
    9. If there is overlap, rerun all steps for this pair.
    10. Once the sub-curves we form are so small that they effectively occupy sub-pixel areas, we consider an intersection found, noting that we might have a cluster of multiple intersections at the sub-pixel level, out of which we pick one to act as "found" t value @@ -9795,13 +9792,13 @@ radialError(radius, points[]):

      1. We start with low=0, mid=0.5 and high=1
      2. -
      3. - That'll fail, so we retry with the interval halved: {0, 0.25, 0.5} -
          -
        • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
        • -
        • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
        • -
        -
      4. +
      5. That'll fail, so we retry with the interval halved: {0, 0.25, 0.5}
      6. +
      +
        +
      • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
      • +
      • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
      • +
      +
      1. We keep doing this over and over until we have two arcs, in sequence, of which the first arc is good, and the second arc is bad. When we find that pair, we've found the boundary between a good approximation and a bad approximation, and we pick the good arc. diff --git a/docs/news/2020-09-18.html b/docs/news/2020-09-18.html index 4dc411f5..97cdc80c 100644 --- a/docs/news/2020-09-18.html +++ b/docs/news/2020-09-18.html @@ -33,8 +33,8 @@ - - + + diff --git a/docs/news/2020-11-22.html b/docs/news/2020-11-22.html index 3eda705f..865a39ce 100644 --- a/docs/news/2020-11-22.html +++ b/docs/news/2020-11-22.html @@ -33,8 +33,8 @@ - - + + diff --git a/docs/news/index.html b/docs/news/index.html index 9982e13a..4ab842ed 100644 --- a/docs/news/index.html +++ b/docs/news/index.html @@ -33,7 +33,7 @@ - + diff --git a/docs/news/rss.xml b/docs/news/rss.xml index 6db19b96..0fc958ad 100644 --- a/docs/news/rss.xml +++ b/docs/news/rss.xml @@ -6,7 +6,7 @@ News updates for the primer on Bézier Curves by Pomax en-GB - Sat Jun 05 2021 23:23:15 +00:00 + Mon Jun 07 2021 08:09:41 +00:00 https://pomax.github.io/bezierinfo/images/og-image.png A Primer on Bézier Curves @@ -23,7 +23,7 @@ <p>— <a href="https://twitter.com/TheRealPomax">Pomax</a></p> - Sun Nov 22 2020 00:00:00 +00:00 + Sat Nov 21 2020 16:00:00 +00:00 2020-11-22.html Rewriting the tech stack @@ -119,7 +119,7 @@ draw() { <p>— <a href="https://twitter.com/TheRealPomax">Pomax</a></p> - Fri Sep 18 2020 00:00:00 +00:00 + Thu Sep 17 2020 17:00:00 +00:00 2020-09-18.html diff --git a/docs/ru-RU/index.html b/docs/ru-RU/index.html index bf102fc0..61d4050e 100644 --- a/docs/ru-RU/index.html +++ b/docs/ru-RU/index.html @@ -34,7 +34,7 @@ - + @@ -157,25 +157,26 @@ счастливой жизни этого ресурса.

        -
        -
        -

        - Bitcoin donations: -

        -

        - If you prefer to donate via Bitcoin, you can donate either directly to - 3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu - or use the QR code on the right, if that's the kind of convenience you prefer =) -

        -
        -
        - - - -
        -
        +
        @@ -6157,13 +6158,9 @@ lli = function(line1, line2): >,C2.2).
      2. -
      3. - For each pair, check whether their bounding boxes overlap. -
          -
        1. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
        2. -
        3. If there is overlap, rerun all steps for this pair.
        4. -
        -
      4. +
      5. For each pair, check whether their bounding boxes overlap.
      6. +
      7. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
      8. +
      9. If there is overlap, rerun all steps for this pair.
      10. Once the sub-curves we form are so small that they effectively occupy sub-pixel areas, we consider an intersection found, noting that we might have a cluster of multiple intersections at the sub-pixel level, out of which we pick one to act as "found" t value @@ -9952,13 +9949,13 @@ radialError(radius, points[]):

        1. We start with low=0, mid=0.5 and high=1
        2. -
        3. - That'll fail, so we retry with the interval halved: {0, 0.25, 0.5} -
            -
          • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
          • -
          • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
          • -
          -
        4. +
        5. That'll fail, so we retry with the interval halved: {0, 0.25, 0.5}
        6. +
        +
          +
        • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
        • +
        • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
        • +
        +
        1. We keep doing this over and over until we have two arcs, in sequence, of which the first arc is good, and the second arc is bad. When we find that pair, we've found the boundary between a good approximation and a bad approximation, and we pick the good arc. diff --git a/docs/uk-UA/index.html b/docs/uk-UA/index.html index 606a37f8..f6696765 100644 --- a/docs/uk-UA/index.html +++ b/docs/uk-UA/index.html @@ -39,7 +39,7 @@ - + @@ -161,25 +161,26 @@ багато буде потрібно. Тому, якщо можете допомогти з кавою, то можете бути впевнені, що цей ресурс буде підтримуватися ще довго!

          -
          -
          -

          - Bitcoin donations: -

          -

          - If you prefer to donate via Bitcoin, you can donate either directly to - 3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu - or use the QR code on the right, if that's the kind of convenience you prefer =) -

          -
          -
          - - - -
          -
          +
          @@ -6131,13 +6132,9 @@ lli = function(line1, line2): >,C2.2).
        2. -
        3. - For each pair, check whether their bounding boxes overlap. -
            -
          1. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
          2. -
          3. If there is overlap, rerun all steps for this pair.
          4. -
          -
        4. +
        5. For each pair, check whether their bounding boxes overlap.
        6. +
        7. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
        8. +
        9. If there is overlap, rerun all steps for this pair.
        10. Once the sub-curves we form are so small that they effectively occupy sub-pixel areas, we consider an intersection found, noting that we might have a cluster of multiple intersections at the sub-pixel level, out of which we pick one to act as "found" t value @@ -9926,13 +9923,13 @@ radialError(radius, points[]):

          1. We start with low=0, mid=0.5 and high=1
          2. -
          3. - That'll fail, so we retry with the interval halved: {0, 0.25, 0.5} -
              -
            • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
            • -
            • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
            • -
            -
          4. +
          5. That'll fail, so we retry with the interval halved: {0, 0.25, 0.5}
          6. +
          +
            +
          • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
          • +
          • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
          • +
          +
          1. We keep doing this over and over until we have two arcs, in sequence, of which the first arc is good, and the second arc is bad. When we find that pair, we've found the boundary between a good approximation and a bad approximation, and we pick the good arc. diff --git a/docs/zh-CN/index.html b/docs/zh-CN/index.html index cc71ebd3..48f35f8b 100644 --- a/docs/zh-CN/index.html +++ b/docs/zh-CN/index.html @@ -41,7 +41,7 @@ - + @@ -170,25 +170,26 @@ sponsoring the site! I am more than happy to work with your finance department on sponsorship invoicing and recognition.

            -
            -
            -

            - Bitcoin donations: -

            -

            - If you prefer to donate via Bitcoin, you can donate either directly to - 3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu - or use the QR code on the right, if that's the kind of convenience you prefer =) -

            -
            -
            - - - -
            -
            +
            @@ -5976,13 +5977,9 @@ lli = function(line1, line2): >,C2.2).
          2. -
          3. - For each pair, check whether their bounding boxes overlap. -
              -
            1. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
            2. -
            3. If there is overlap, rerun all steps for this pair.
            4. -
            -
          4. +
          5. For each pair, check whether their bounding boxes overlap.
          6. +
          7. If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.
          8. +
          9. If there is overlap, rerun all steps for this pair.
          10. Once the sub-curves we form are so small that they effectively occupy sub-pixel areas, we consider an intersection found, noting that we might have a cluster of multiple intersections at the sub-pixel level, out of which we pick one to act as "found" t value @@ -9771,13 +9768,13 @@ radialError(radius, points[]):

            1. We start with low=0, mid=0.5 and high=1
            2. -
            3. - That'll fail, so we retry with the interval halved: {0, 0.25, 0.5} -
                -
              • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
              • -
              • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
              • -
              -
            4. +
            5. That'll fail, so we retry with the interval halved: {0, 0.25, 0.5}
            6. +
            +
              +
            • If that arc's good, we move back up by half distance: {0, 0.375, 0.75}.
            • +
            • However, if the arc was still bad, we move down by half the distance: {0, 0.125, 0.25}.
            • +
            +
            1. We keep doing this over and over until we have two arcs, in sequence, of which the first arc is good, and the second arc is bad. When we find that pair, we've found the boundary between a good approximation and a bad approximation, and we pick the good arc.