mirror of
https://github.com/Pomax/BezierInfo-2.git
synced 2025-08-30 19:50:01 +02:00
smaller btc CTA
This commit is contained in:
@@ -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-03-26T00:54:44+00:00" />
|
||||
<meta property="og:updated_time" content="2021-04-09T16:39:33+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" />
|
||||
@@ -155,10 +155,6 @@
|
||||
|
||||
<h2>Donations and sponsorship</h2>
|
||||
|
||||
<a class="btcqr" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
|
||||
<p>
|
||||
If this is a resource that you're using for research, as work reference, or even writing your own software, please consider
|
||||
<a href="https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=3BNHGHZAS3DP6&locale.x=en_CA">donating</a> (any amount helps) or
|
||||
@@ -171,13 +167,25 @@
|
||||
sponsoring the site! I am more than happy to work with your finance department on sponsorship invoicing and recognition.
|
||||
</p>
|
||||
|
||||
<h3>Bitcoin donations:</h3>
|
||||
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
<div class="btcfh">
|
||||
<div>
|
||||
<h3>
|
||||
Bitcoin donations:
|
||||
</h3>
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves"
|
||||
>3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a
|
||||
>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
</div>
|
||||
<div class="btcqr">
|
||||
<a href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br style="clear: both;" />
|
||||
|
||||
@@ -5886,13 +5894,9 @@ lli = function(line1, line2):
|
||||
>,<em>C<sub>2.2</sub></em
|
||||
>).
|
||||
</li>
|
||||
<li>
|
||||
For each pair, check whether their bounding boxes overlap.
|
||||
<ol>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>For each pair, check whether their bounding boxes overlap.</li>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
<li>
|
||||
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" <code>t</code> value
|
||||
@@ -9197,13 +9201,13 @@ for p = 1 to points.length-3 (inclusive):
|
||||
</p>
|
||||
<ol>
|
||||
<li>We start with <code>low=0</code>, <code>mid=0.5</code> and <code>high=1</code></li>
|
||||
<li>
|
||||
That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code></li>
|
||||
</ol>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
<ol start="3">
|
||||
<li>
|
||||
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.
|
||||
|
@@ -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-03-26T00:54:44+00:00" />
|
||||
<meta property="og:updated_time" content="2021-04-09T16:39:33+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" />
|
||||
@@ -158,10 +158,6 @@
|
||||
|
||||
<h2>Donations and sponsorship</h2>
|
||||
|
||||
<a class="btcqr" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
|
||||
<p>
|
||||
If this is a resource that you're using for research, as work reference, or even writing your own software, please consider
|
||||
<a href="https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=3BNHGHZAS3DP6&locale.x=en_CA">donating</a> (any amount helps) or
|
||||
@@ -174,13 +170,25 @@
|
||||
sponsoring the site! I am more than happy to work with your finance department on sponsorship invoicing and recognition.
|
||||
</p>
|
||||
|
||||
<h3>Bitcoin donations:</h3>
|
||||
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
<div class="btcfh">
|
||||
<div>
|
||||
<h3>
|
||||
Bitcoin donations:
|
||||
</h3>
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves"
|
||||
>3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a
|
||||
>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
</div>
|
||||
<div class="btcqr">
|
||||
<a href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br style="clear: both;" />
|
||||
|
||||
@@ -5992,13 +6000,9 @@ lli = function(line1, line2):
|
||||
>,<em>C<sub>2.2</sub></em
|
||||
>).
|
||||
</li>
|
||||
<li>
|
||||
For each pair, check whether their bounding boxes overlap.
|
||||
<ol>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>For each pair, check whether their bounding boxes overlap.</li>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
<li>
|
||||
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" <code>t</code> value
|
||||
@@ -9422,13 +9426,13 @@ for p = 1 to points.length-3 (inclusive):
|
||||
</p>
|
||||
<ol>
|
||||
<li>We start with <code>low=0</code>, <code>mid=0.5</code> and <code>high=1</code></li>
|
||||
<li>
|
||||
That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code></li>
|
||||
</ol>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
<ol start="3">
|
||||
<li>
|
||||
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.
|
||||
|
@@ -33,8 +33,8 @@
|
||||
<meta property="og:description" content="Rewriting the tech stack" />
|
||||
<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="Fri Mar 26 2021 00:54:44 +00:00" />
|
||||
<meta property="og:published_time" content="Thu Sep 17 2020 17:00:00 +00:00" />
|
||||
<meta property="og:updated_time" content="Fri Apr 09 2021 09:39:33 +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" />
|
||||
|
@@ -33,8 +33,8 @@
|
||||
<meta property="og:description" content="Curve-circle intersections" />
|
||||
<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="Fri Mar 26 2021 00:54:44 +00:00" />
|
||||
<meta property="og:published_time" content="Sat Nov 21 2020 16:00:00 +00:00" />
|
||||
<meta property="og:updated_time" content="Fri Apr 09 2021 09:39:33 +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" />
|
||||
|
@@ -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="Fri Mar 26 2021 00:54:44 GMT+0000 (Coordinated Universal Time)" />
|
||||
<meta property="og:published_time" content="Fri Apr 09 2021 09:39:33 GMT-0700 (Pacific Daylight 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>Fri Mar 26 2021 00:54:44 +00:00</lastBuildDate>
|
||||
<lastBuildDate>Fri Apr 09 2021 09:39:33 +00:00</lastBuildDate>
|
||||
<image>
|
||||
<url>https://pomax.github.io/bezierinfo/images/og-image.png</url>
|
||||
<title>A Primer on Bézier Curves</title>
|
||||
@@ -23,7 +23,7 @@
|
||||
<p>— <a href="https://twitter.com/TheRealPomax">Pomax</a></p>
|
||||
|
||||
</description>
|
||||
<pubDate>Sun Nov 22 2020 00:00:00 +00:00</pubDate>
|
||||
<pubDate>Sat Nov 21 2020 16:00:00 +00:00</pubDate>
|
||||
<guid>2020-11-22.html</guid>
|
||||
</item><item>
|
||||
<title>Rewriting the tech stack</title>
|
||||
@@ -119,7 +119,7 @@ draw() {
|
||||
<p>— <a href="https://twitter.com/TheRealPomax">Pomax</a></p>
|
||||
|
||||
</description>
|
||||
<pubDate>Fri Sep 18 2020 00:00:00 +00:00</pubDate>
|
||||
<pubDate>Thu Sep 17 2020 17:00:00 +00:00</pubDate>
|
||||
<guid>2020-09-18.html</guid>
|
||||
</item>
|
||||
</channel>
|
||||
|
@@ -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-03-26T00:54:44+00:00" />
|
||||
<meta property="og:updated_time" content="2021-04-09T16:39:33+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" />
|
||||
@@ -148,10 +148,6 @@
|
||||
|
||||
<h2>Donations and sponsorship</h2>
|
||||
|
||||
<a class="btcqr" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
|
||||
<p>
|
||||
Ежели сей ресурс помог вам в ваших исследованиях или в написании собственной программы рассмотрите возможность
|
||||
<a href="https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=3BNHGHZAS3DP6&locale.x=en_CA">задонатить</a>
|
||||
@@ -161,13 +157,25 @@
|
||||
счастливой жизни этого ресурса.
|
||||
</p>
|
||||
|
||||
<h3>Bitcoin donations:</h3>
|
||||
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
<div class="btcfh">
|
||||
<div>
|
||||
<h3>
|
||||
Bitcoin donations:
|
||||
</h3>
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves"
|
||||
>3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a
|
||||
>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
</div>
|
||||
<div class="btcqr">
|
||||
<a href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br style="clear: both;" />
|
||||
|
||||
@@ -6149,13 +6157,9 @@ lli = function(line1, line2):
|
||||
>,<em>C<sub>2.2</sub></em
|
||||
>).
|
||||
</li>
|
||||
<li>
|
||||
For each pair, check whether their bounding boxes overlap.
|
||||
<ol>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>For each pair, check whether their bounding boxes overlap.</li>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
<li>
|
||||
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" <code>t</code> value
|
||||
@@ -9579,13 +9583,13 @@ for p = 1 to points.length-3 (inclusive):
|
||||
</p>
|
||||
<ol>
|
||||
<li>We start with <code>low=0</code>, <code>mid=0.5</code> and <code>high=1</code></li>
|
||||
<li>
|
||||
That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code></li>
|
||||
</ol>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
<ol start="3">
|
||||
<li>
|
||||
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.
|
||||
|
@@ -485,9 +485,24 @@ a.rss-link {
|
||||
|
||||
/* --------------------- */
|
||||
|
||||
a.btcqr {
|
||||
float: right;
|
||||
margin-left: 1em;
|
||||
div.btcfh {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
div.btcqr {
|
||||
flex: 0 0 auto;
|
||||
margin-top: 1em;
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
div.btcqr a {
|
||||
text-decoration: none;
|
||||
padding-left: 0.5em;
|
||||
}
|
||||
|
||||
div.btcqr img {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
a.btclk {
|
||||
|
@@ -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-03-26T00:54:44+00:00" />
|
||||
<meta property="og:updated_time" content="2021-04-09T16:39:33+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" />
|
||||
@@ -153,10 +153,6 @@
|
||||
|
||||
<h2>Donations and sponsorship</h2>
|
||||
|
||||
<a class="btcqr" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
|
||||
<p>
|
||||
Якщо ви використовуєте цей ресурс для наукових досліджень, або пишете власне програмне забезпечення, будь ласка, розгляньте можливість
|
||||
<a href="https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=3BNHGHZAS3DP6&locale.x=en_CA">фінансової підтримки</a> (будь-яка сума
|
||||
@@ -165,13 +161,25 @@
|
||||
багато буде потрібно. Тому, якщо можете допомогти з кавою, то можете бути впевнені, що цей ресурс буде підтримуватися ще довго!
|
||||
</p>
|
||||
|
||||
<h3>Bitcoin donations:</h3>
|
||||
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
<div class="btcfh">
|
||||
<div>
|
||||
<h3>
|
||||
Bitcoin donations:
|
||||
</h3>
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves"
|
||||
>3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a
|
||||
>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
</div>
|
||||
<div class="btcqr">
|
||||
<a href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br style="clear: both;" />
|
||||
|
||||
@@ -6123,13 +6131,9 @@ lli = function(line1, line2):
|
||||
>,<em>C<sub>2.2</sub></em
|
||||
>).
|
||||
</li>
|
||||
<li>
|
||||
For each pair, check whether their bounding boxes overlap.
|
||||
<ol>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>For each pair, check whether their bounding boxes overlap.</li>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
<li>
|
||||
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" <code>t</code> value
|
||||
@@ -9553,13 +9557,13 @@ for p = 1 to points.length-3 (inclusive):
|
||||
</p>
|
||||
<ol>
|
||||
<li>We start with <code>low=0</code>, <code>mid=0.5</code> and <code>high=1</code></li>
|
||||
<li>
|
||||
That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code></li>
|
||||
</ol>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
<ol start="3">
|
||||
<li>
|
||||
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.
|
||||
|
@@ -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-03-26T00:54:44+00:00" />
|
||||
<meta property="og:updated_time" content="2021-04-09T16:39:33+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" />
|
||||
@@ -158,10 +158,6 @@
|
||||
|
||||
<h2>Donations and sponsorship</h2>
|
||||
|
||||
<a class="btcqr" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
|
||||
<p>
|
||||
If this is a resource that you're using for research, as work reference, or even writing your own software, please consider
|
||||
<a href="https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=3BNHGHZAS3DP6&locale.x=en_CA">donating</a> (any amount helps) or
|
||||
@@ -174,13 +170,25 @@
|
||||
sponsoring the site! I am more than happy to work with your finance department on sponsorship invoicing and recognition.
|
||||
</p>
|
||||
|
||||
<h3>Bitcoin donations:</h3>
|
||||
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
<div class="btcfh">
|
||||
<div>
|
||||
<h3>
|
||||
Bitcoin donations:
|
||||
</h3>
|
||||
<p>
|
||||
If you prefer to donate via Bitcoin, you can donate either directly to
|
||||
<a class="btclk" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves"
|
||||
>3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu</a
|
||||
>
|
||||
or use the QR code on the right, if that's the kind of convenience you prefer =)
|
||||
</p>
|
||||
</div>
|
||||
<div class="btcqr">
|
||||
<a href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br style="clear: both;" />
|
||||
|
||||
@@ -5968,13 +5976,9 @@ lli = function(line1, line2):
|
||||
>,<em>C<sub>2.2</sub></em
|
||||
>).
|
||||
</li>
|
||||
<li>
|
||||
For each pair, check whether their bounding boxes overlap.
|
||||
<ol>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>For each pair, check whether their bounding boxes overlap.</li>
|
||||
<li>If their bounding boxes do not overlap, discard the pair, as there is no intersection between this pair of curves.</li>
|
||||
<li>If there <em>is</em> overlap, rerun all steps for this pair.</li>
|
||||
<li>
|
||||
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" <code>t</code> value
|
||||
@@ -9398,13 +9402,13 @@ for p = 1 to points.length-3 (inclusive):
|
||||
</p>
|
||||
<ol>
|
||||
<li>We start with <code>low=0</code>, <code>mid=0.5</code> and <code>high=1</code></li>
|
||||
<li>
|
||||
That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>That'll fail, so we retry with the interval halved: <code>{0, 0.25, 0.5}</code></li>
|
||||
</ol>
|
||||
<ul>
|
||||
<li>If that arc's good, we move back up by half distance: <code>{0, 0.375, 0.75}</code>.</li>
|
||||
<li>However, if the arc was still bad, we move <em>down</em> by half the distance: <code>{0, 0.125, 0.25}</code>.</li>
|
||||
</ul>
|
||||
<ol start="3">
|
||||
<li>
|
||||
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.
|
||||
|
@@ -1,13 +1,19 @@
|
||||
<h2>{{ donationsHeading }} </h2>
|
||||
|
||||
<a class="btcqr" href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG">
|
||||
</a>
|
||||
|
||||
{{ donationCTA }}
|
||||
|
||||
<h3>{{ bitcoinHeading }}</h3>
|
||||
|
||||
{{ bitcoinCTA }}
|
||||
<div class="btcfh">
|
||||
<div>
|
||||
<h3>
|
||||
{{ bitcoinHeading }}
|
||||
</h3>
|
||||
{{ bitcoinCTA }}
|
||||
</div>
|
||||
<div class="btcqr">
|
||||
<a href="bitcoin:3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu?label=Primer%20on%20Bezier%20Curves">
|
||||
<img src="./images/3GY1HbQ2cH9V4xBLnRYdEfc42Nd1ZyjLZu.PNG">
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br style="clear:both">
|
||||
|
Reference in New Issue
Block a user