mirror of
https://github.com/Pomax/BezierInfo-2.git
synced 2025-08-19 23:12:21 +02:00
Automated build
This commit is contained in:
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 21 KiB |
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 28 KiB |
@@ -0,0 +1,10 @@
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ e - t · A
|
||||
│ 1
|
||||
╭ e = (1-t) · v + t · A │ v = ───────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 1-t
|
||||
│ e = (1-t) · A + t · v │ e - (1-t) · A
|
||||
╰ 2 2 │ 2
|
||||
│ v = ───────────────
|
||||
╰ 2 t
|
@@ -0,0 +1,10 @@
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ v - (1-t) · start
|
||||
│ 1
|
||||
╭ v = (1-t) · start + t · C │ C = ────────────────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 t
|
||||
│ v = (1-t) · C + t · end │ v - t · end
|
||||
╰ 2 2 │ 2
|
||||
│ C = ──────────────
|
||||
╰ 2 1-t
|
37
docs/index.html
generated
37
docs/index.html
generated
@@ -38,7 +38,7 @@
|
||||
<meta property="og:locale" content="en-GB" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="2013-06-13T12:00:00+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T15:13:10+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T21:59:19+00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
@@ -6112,37 +6112,38 @@ lli = function(line1, line2):
|
||||
<p>
|
||||
With <code>A</code> found, finding <code>e1</code> and <code>e2</code> for quadratic curves is a matter of running the linear
|
||||
interpolation with <code>t</code> between start and <code>A</code> to yield <code>e1</code>, and between <code>A</code> and end to yield
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code>: as long as the
|
||||
distance ratio between <code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>,
|
||||
we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code> (there are
|
||||
infinitely many, because the tangent at B is a free parameter for cubic curves) so as long as the distance ratio between
|
||||
<code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>, we are free to pick any
|
||||
pair, after which we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ A - e
|
||||
╭ e - t · A
|
||||
│ 1
|
||||
│ v = A - ──────
|
||||
╡ 1 1 - t
|
||||
│ A - e
|
||||
│ 2
|
||||
│ v = A - ──────
|
||||
╭ e = (1-t) · v + t · A │ v = ───────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 1-t
|
||||
│ e = (1-t) · A + t · v │ e - (1-t) · A
|
||||
╰ 2 2 │ 2
|
||||
│ v = ───────────────
|
||||
╰ 2 t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/68a25507037f1a9420c60a5cd3d10f47.svg" width="121px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/3166afa345aec1abda432c39b68d39a0.svg" width="339px" height="73px" loading="lazy" />
|
||||
<p>And then reverse engineer the curve's control points:</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ v - start
|
||||
╭ v - (1-t) · start
|
||||
│ 1
|
||||
│ C = start + ───────────
|
||||
╡ 1 t
|
||||
│ v - end
|
||||
│ 2
|
||||
│ C = end + ─────────
|
||||
╭ v = (1-t) · start + t · C │ C = ────────────────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 t
|
||||
│ v = (1-t) · C + t · end │ v - t · end
|
||||
╰ 2 2 │ 2
|
||||
│ C = ──────────────
|
||||
╰ 2 1-t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/2184aa2a897df864b3a67984be18ef27.svg" width="163px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/8bd3e6fed5bf8d871d30221ae400fd93.svg" width="383px" height="75px" loading="lazy" />
|
||||
<p>
|
||||
So: if we have a curve's start and end points, then for any <code>t</code> value we implicitly know all the ABC values, which (combined
|
||||
with an educated guess on appropriate <code>e1</code> and <code>e2</code> coordinates for cubic curves) gives us the necessary information
|
||||
|
37
docs/ja-JP/index.html
generated
37
docs/ja-JP/index.html
generated
@@ -41,7 +41,7 @@
|
||||
<meta property="og:locale" content="ja-JP" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="2013-06-13T12:00:00+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T15:13:10+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T21:59:19+00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
@@ -6227,37 +6227,38 @@ lli = function(line1, line2):
|
||||
<p>
|
||||
With <code>A</code> found, finding <code>e1</code> and <code>e2</code> for quadratic curves is a matter of running the linear
|
||||
interpolation with <code>t</code> between start and <code>A</code> to yield <code>e1</code>, and between <code>A</code> and end to yield
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code>: as long as the
|
||||
distance ratio between <code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>,
|
||||
we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code> (there are
|
||||
infinitely many, because the tangent at B is a free parameter for cubic curves) so as long as the distance ratio between
|
||||
<code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>, we are free to pick any
|
||||
pair, after which we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ A - e
|
||||
╭ e - t · A
|
||||
│ 1
|
||||
│ v = A - ──────
|
||||
╡ 1 1 - t
|
||||
│ A - e
|
||||
│ 2
|
||||
│ v = A - ──────
|
||||
╭ e = (1-t) · v + t · A │ v = ───────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 1-t
|
||||
│ e = (1-t) · A + t · v │ e - (1-t) · A
|
||||
╰ 2 2 │ 2
|
||||
│ v = ───────────────
|
||||
╰ 2 t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/68a25507037f1a9420c60a5cd3d10f47.svg" width="121px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/3166afa345aec1abda432c39b68d39a0.svg" width="339px" height="73px" loading="lazy" />
|
||||
<p>And then reverse engineer the curve's control points:</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ v - start
|
||||
╭ v - (1-t) · start
|
||||
│ 1
|
||||
│ C = start + ───────────
|
||||
╡ 1 t
|
||||
│ v - end
|
||||
│ 2
|
||||
│ C = end + ─────────
|
||||
╭ v = (1-t) · start + t · C │ C = ────────────────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 t
|
||||
│ v = (1-t) · C + t · end │ v - t · end
|
||||
╰ 2 2 │ 2
|
||||
│ C = ──────────────
|
||||
╰ 2 1-t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/2184aa2a897df864b3a67984be18ef27.svg" width="163px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/8bd3e6fed5bf8d871d30221ae400fd93.svg" width="383px" height="75px" loading="lazy" />
|
||||
<p>
|
||||
So: if we have a curve's start and end points, then for any <code>t</code> value we implicitly know all the ABC values, which (combined
|
||||
with an educated guess on appropriate <code>e1</code> and <code>e2</code> coordinates for cubic curves) gives us the necessary information
|
||||
|
@@ -34,7 +34,7 @@
|
||||
<meta property="og:locale" content="en-GB" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="Fri Sep 18 2020 00:00:00 +00:00" />
|
||||
<meta property="og:updated_time" content="Mon Aug 30 2021 15:13:10 +00:00" />
|
||||
<meta property="og:updated_time" content="Mon Aug 30 2021 21:59:19 +00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
|
@@ -34,7 +34,7 @@
|
||||
<meta property="og:locale" content="en-GB" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="Sun Nov 22 2020 00:00:00 +00:00" />
|
||||
<meta property="og:updated_time" content="Mon Aug 30 2021 15:13:10 +00:00" />
|
||||
<meta property="og:updated_time" content="Mon Aug 30 2021 21:59:19 +00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
|
2
docs/news/index.html
generated
2
docs/news/index.html
generated
@@ -33,7 +33,7 @@
|
||||
<meta property="og:description" content="" />
|
||||
<meta property="og:locale" content="en-GB" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="Mon Aug 30 2021 15:13:10 GMT+0000 (Coordinated Universal Time)" />
|
||||
<meta property="og:published_time" content="Mon Aug 30 2021 21:59:19 GMT+0000 (Coordinated Universal Time)" />
|
||||
<meta property="og:updated_time" content="" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
|
@@ -6,7 +6,7 @@
|
||||
<atom:link href="https://pomax.github.io/bezierinfo" rel="self"></atom:link>
|
||||
<description>News updates for the <a href="https://pomax.github.io/bezierinfo">primer on Bézier Curves</a> by Pomax</description>
|
||||
<language>en-GB</language>
|
||||
<lastBuildDate>Mon Aug 30 2021 15:13:10 +00:00</lastBuildDate>
|
||||
<lastBuildDate>Mon Aug 30 2021 21:59:19 +00:00</lastBuildDate>
|
||||
<image>
|
||||
<url>https://pomax.github.io/bezierinfo/images/og-image.png</url>
|
||||
<title>A Primer on Bézier Curves</title>
|
||||
|
37
docs/ru-RU/index.html
generated
37
docs/ru-RU/index.html
generated
@@ -34,7 +34,7 @@
|
||||
<meta property="og:locale" content="ru-RU" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="2013-06-13T12:00:00+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T15:13:10+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T21:59:19+00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
@@ -6384,37 +6384,38 @@ lli = function(line1, line2):
|
||||
<p>
|
||||
With <code>A</code> found, finding <code>e1</code> and <code>e2</code> for quadratic curves is a matter of running the linear
|
||||
interpolation with <code>t</code> between start and <code>A</code> to yield <code>e1</code>, and between <code>A</code> and end to yield
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code>: as long as the
|
||||
distance ratio between <code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>,
|
||||
we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code> (there are
|
||||
infinitely many, because the tangent at B is a free parameter for cubic curves) so as long as the distance ratio between
|
||||
<code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>, we are free to pick any
|
||||
pair, after which we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ A - e
|
||||
╭ e - t · A
|
||||
│ 1
|
||||
│ v = A - ──────
|
||||
╡ 1 1 - t
|
||||
│ A - e
|
||||
│ 2
|
||||
│ v = A - ──────
|
||||
╭ e = (1-t) · v + t · A │ v = ───────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 1-t
|
||||
│ e = (1-t) · A + t · v │ e - (1-t) · A
|
||||
╰ 2 2 │ 2
|
||||
│ v = ───────────────
|
||||
╰ 2 t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/68a25507037f1a9420c60a5cd3d10f47.svg" width="121px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/3166afa345aec1abda432c39b68d39a0.svg" width="339px" height="73px" loading="lazy" />
|
||||
<p>And then reverse engineer the curve's control points:</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ v - start
|
||||
╭ v - (1-t) · start
|
||||
│ 1
|
||||
│ C = start + ───────────
|
||||
╡ 1 t
|
||||
│ v - end
|
||||
│ 2
|
||||
│ C = end + ─────────
|
||||
╭ v = (1-t) · start + t · C │ C = ────────────────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 t
|
||||
│ v = (1-t) · C + t · end │ v - t · end
|
||||
╰ 2 2 │ 2
|
||||
│ C = ──────────────
|
||||
╰ 2 1-t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/2184aa2a897df864b3a67984be18ef27.svg" width="163px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/8bd3e6fed5bf8d871d30221ae400fd93.svg" width="383px" height="75px" loading="lazy" />
|
||||
<p>
|
||||
So: if we have a curve's start and end points, then for any <code>t</code> value we implicitly know all the ABC values, which (combined
|
||||
with an educated guess on appropriate <code>e1</code> and <code>e2</code> coordinates for cubic curves) gives us the necessary information
|
||||
|
37
docs/uk-UA/index.html
generated
37
docs/uk-UA/index.html
generated
@@ -39,7 +39,7 @@
|
||||
<meta property="og:locale" content="uk-UA" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="2013-06-13T12:00:00+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T15:13:10+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T21:59:19+00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
@@ -6360,37 +6360,38 @@ lli = function(line1, line2):
|
||||
<p>
|
||||
With <code>A</code> found, finding <code>e1</code> and <code>e2</code> for quadratic curves is a matter of running the linear
|
||||
interpolation with <code>t</code> between start and <code>A</code> to yield <code>e1</code>, and between <code>A</code> and end to yield
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code>: as long as the
|
||||
distance ratio between <code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>,
|
||||
we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code> (there are
|
||||
infinitely many, because the tangent at B is a free parameter for cubic curves) so as long as the distance ratio between
|
||||
<code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>, we are free to pick any
|
||||
pair, after which we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ A - e
|
||||
╭ e - t · A
|
||||
│ 1
|
||||
│ v = A - ──────
|
||||
╡ 1 1 - t
|
||||
│ A - e
|
||||
│ 2
|
||||
│ v = A - ──────
|
||||
╭ e = (1-t) · v + t · A │ v = ───────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 1-t
|
||||
│ e = (1-t) · A + t · v │ e - (1-t) · A
|
||||
╰ 2 2 │ 2
|
||||
│ v = ───────────────
|
||||
╰ 2 t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/68a25507037f1a9420c60a5cd3d10f47.svg" width="121px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/3166afa345aec1abda432c39b68d39a0.svg" width="339px" height="73px" loading="lazy" />
|
||||
<p>And then reverse engineer the curve's control points:</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ v - start
|
||||
╭ v - (1-t) · start
|
||||
│ 1
|
||||
│ C = start + ───────────
|
||||
╡ 1 t
|
||||
│ v - end
|
||||
│ 2
|
||||
│ C = end + ─────────
|
||||
╭ v = (1-t) · start + t · C │ C = ────────────────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 t
|
||||
│ v = (1-t) · C + t · end │ v - t · end
|
||||
╰ 2 2 │ 2
|
||||
│ C = ──────────────
|
||||
╰ 2 1-t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/2184aa2a897df864b3a67984be18ef27.svg" width="163px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/8bd3e6fed5bf8d871d30221ae400fd93.svg" width="383px" height="75px" loading="lazy" />
|
||||
<p>
|
||||
So: if we have a curve's start and end points, then for any <code>t</code> value we implicitly know all the ABC values, which (combined
|
||||
with an educated guess on appropriate <code>e1</code> and <code>e2</code> coordinates for cubic curves) gives us the necessary information
|
||||
|
37
docs/zh-CN/index.html
generated
37
docs/zh-CN/index.html
generated
@@ -41,7 +41,7 @@
|
||||
<meta property="og:locale" content="zh-CN" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:published_time" content="2013-06-13T12:00:00+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T15:13:10+00:00" />
|
||||
<meta property="og:updated_time" content="2021-08-30T21:59:19+00:00" />
|
||||
<meta property="og:author" content="Mike 'Pomax' Kamermans" />
|
||||
<meta property="og:section" content="Bézier Curves" />
|
||||
<meta property="og:tag" content="Bézier Curves" />
|
||||
@@ -6203,37 +6203,38 @@ lli = function(line1, line2):
|
||||
<p>
|
||||
With <code>A</code> found, finding <code>e1</code> and <code>e2</code> for quadratic curves is a matter of running the linear
|
||||
interpolation with <code>t</code> between start and <code>A</code> to yield <code>e1</code>, and between <code>A</code> and end to yield
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code>: as long as the
|
||||
distance ratio between <code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>,
|
||||
we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
<code>e2</code>. For cubic curves, there is no single pair of points that can act as <code>e1</code> and <code>e2</code> (there are
|
||||
infinitely many, because the tangent at B is a free parameter for cubic curves) so as long as the distance ratio between
|
||||
<code>e1</code> to <code>B</code> and <code>B</code> to <code>e2</code> is the Bézier ratio <code>(1-t):t</code>, we are free to pick any
|
||||
pair, after which we can reverse engineer <code>v1</code> and <code>v2</code>:
|
||||
</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ A - e
|
||||
╭ e - t · A
|
||||
│ 1
|
||||
│ v = A - ──────
|
||||
╡ 1 1 - t
|
||||
│ A - e
|
||||
│ 2
|
||||
│ v = A - ──────
|
||||
╭ e = (1-t) · v + t · A │ v = ───────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 1-t
|
||||
│ e = (1-t) · A + t · v │ e - (1-t) · A
|
||||
╰ 2 2 │ 2
|
||||
│ v = ───────────────
|
||||
╰ 2 t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/68a25507037f1a9420c60a5cd3d10f47.svg" width="121px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/3166afa345aec1abda432c39b68d39a0.svg" width="339px" height="73px" loading="lazy" />
|
||||
<p>And then reverse engineer the curve's control points:</p>
|
||||
<!--
|
||||
\setmainfont[Ligatures=TeX]TeX Gyre Pagella \setmathfontTeX Gyre Pagella Math
|
||||
|
||||
╭ v - start
|
||||
╭ v - (1-t) · start
|
||||
│ 1
|
||||
│ C = start + ───────────
|
||||
╡ 1 t
|
||||
│ v - end
|
||||
│ 2
|
||||
│ C = end + ─────────
|
||||
╭ v = (1-t) · start + t · C │ C = ────────────────────
|
||||
╡ 1 1 \Rightarrow ╡ 1 t
|
||||
│ v = (1-t) · C + t · end │ v - t · end
|
||||
╰ 2 2 │ 2
|
||||
│ C = ──────────────
|
||||
╰ 2 1-t
|
||||
-->
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/2184aa2a897df864b3a67984be18ef27.svg" width="163px" height="73px" loading="lazy" />
|
||||
<img class="LaTeX SVG" src="./images/chapters/abc/8bd3e6fed5bf8d871d30221ae400fd93.svg" width="383px" height="75px" loading="lazy" />
|
||||
<p>
|
||||
So: if we have a curve's start and end points, then for any <code>t</code> value we implicitly know all the ABC values, which (combined
|
||||
with an educated guess on appropriate <code>e1</code> and <code>e2</code> coordinates for cubic curves) gives us the necessary information
|
||||
|
Reference in New Issue
Block a user