1
$\begingroup$

For a quadratic Bézier curve ($b_2(t)$, with control points $p_1, c_2, p_3$), when $t = 0.5$, the interpolant $b_2(t = 0.5)$ is equidistant from $c_2$ and the midpoint $m_2$ of the line from $p_1$ to $p_3$. Thus we can extrapolate from $m_2$ through $c_2$ to $p_2$.

Can we describe similarly about the control points only using the data points when the Bézier curve has higher order? For example, for a cubic one ($b_3(t)$), I tried drawing the control point polygons and only found out the distance from $m_{2.5}$, the middle point between $p_1$ and $p_4$, to $b_3(t = 0.5)$, is $3 \times b_3(t = 0.5)$ to $d_{2.5}$, the middle point between $c_2$ and $c_3$. But if we are only given $b_3(t = 0, 1/3, 2/3, 1) = p_1$ to $p_4$, I'm not sure how $b_3(t = 0.5)$ would play a role in finding $c_2$ and $c_3$.

Any help is appreciated.

$\endgroup$

2 Answers 2

1
$\begingroup$

A completely different approach (from my other answer) is to use the concept of blossoming, which is explained in these notes written by Lyle Ramshaw. Ramshaw clarified and popularized the blossoming idea, though it was originally developed by de Casteljau in the 1960s.

If $F$ is the blossom of the Bézier curve, then, using the notation from my other answer, we have $$ P_0 = F(0,0,0) \; ; \; P_1 = F(1,0,0) \; ; \; P_2 = F(1,1,0) \; ; \; P_3 = F(1,1,1) $$ and $$ Q_0 = F(0,0,0) \; ; \; Q_1 = F(\tfrac13, \tfrac13, \tfrac13) \; ; \; Q_2 = F(\tfrac23, \tfrac23, \tfrac23) \; ; \; Q_3 = F(1,1,1) $$ The function $F$ is multi-affine (affine in each variable). The de Casteljau algorithm uses the multi-affine property to calculate $Q_0,Q_1,Q_2,Q_3$ from $P_0,P_1,P_2,P_3$. But it seems that knowing the value of $F$ at any four "general" places will let you calculate its value at any other place, again using the multi-affine property. So, in particular, you can calculate $P_0,P_1,P_2,P_3$ if you know the curve points corresponding to any four parameter values.

Actually, on page 11 of the notes I cited above, we learn that, provided the cubic curve is twisted in space (i.e. not planar), the blossom point $F(u, v,w)$ can be constructed geometrically as the intersection of the curve's osculating planes at the three points $C(u) =F(u,u,u)$, $C(v) = F(v,v,v)$, and $C(w) = F(w,w,w)$.

Of course, this requires that $u,v,w$ are distinct, so it won't let us calculate the control points $P_1 = F(0,0,1)$ and $P_2 = F(0,1,1)$ directly. But there's a modified rule that works, as explained on page 12 of the notes: the blossom point $F(u, v,v)$ can be constructed geometrically as the intersection of the curve's osculating plane at the point $C(u) =F(u,u,u)$, and its tangent line at $C(v) = F(v,v,v)$. So, in particular, $P_1 = F(0,0,1)$ is the intersection of tangent line at $C(0)$ and the osculating plane at $C(1)$. Similarly, $P_2 = F(0,1,1)$ is the intersection of tangent line at $C(1)$ and the osculating plane at $C(0)$.

$\endgroup$
1
$\begingroup$

Suppose we have a cubic curve $C$ with control points $P_0, P_1, P_2, P_3$.

Let's denote some "data points" by $Q_0 = C(0) = P_0$, $Q_1 = C(\tfrac13)$ and $Q_2 = C(\tfrac23)$, and $Q_3 = C(1) = P_3$,

Then, by calculating $C(\tfrac13)$ and $C(\tfrac23)$, we know that $$ Q_1 = \frac{1}{27}(8P_0 + 12P_1 + 6P_2 + P_3) = \frac{1}{27}(8Q_0 + 12P_1 + 6P_2 + Q_3) \\ Q_2 = \frac{1}{27}( P_0 + 6P_1 + 12P_2 + 8P_3) = \frac{1}{27}( Q_0 + 6P_1 + 12P_2 + QP_3) $$ You can easily solve these equations to get $$ P_1 = \frac16(-5Q_0 + 18Q_1 - 9Q_2 + 2Q_3) \\ P_2 = \frac16( 2Q_0 - 9Q_1 + 18Q_2 - 5Q_3) $$ So $P_1$ and $P_2$ are affine combinations of $Q_0,Q_1,Q_2,Q_3$, but the geometry is not clear to me, just yet.

There's nothing magic about the parameter values $\tfrac13$ and $\tfrac23$. You could certainly do a similar calculation using $\tfrac14$ and $\tfrac34$, and probably other parameter pairs would work, too. I thought $\tfrac13$ and $\tfrac23$ were most likely to give simple geometric relationships, but no success so far.

In fact this question gives formulas involving the curve points at $t=\tfrac14$ and $t=\tfrac34$.

The geometric construction of $Q_0,Q_1,Q_2,Q_3$ from $P_0,P_1,P_2,P_3$ is clear from de Casteljau's algorithm, but the reverse is not so clear (to me). But, see my other answer for some geometric ideas.

$\endgroup$
3
  • $\begingroup$ Thanks. Where/how did you get $Q_1$ and $Q_2$ from $P_i$? $\endgroup$
    – Yuki.F
    Jul 21, 2021 at 15:10
  • $\begingroup$ By inserting $t=\tfrac13$ and $t=\tfrac23$ into the equation of the curve. $\endgroup$
    – bubba
    Jul 22, 2021 at 9:47
  • $\begingroup$ As it says, $Q_1 = C(\tfrac13)$ and $Q_2 = C(\tfrac23)$. $\endgroup$
    – bubba
    Jul 22, 2021 at 9:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .