Is the the cross product of two Bezier curves a Bezier curve?

664 Views Asked by At

For some geometric problem that I am trying to solve, I am interested in characterizing the cross product between a Bezier curve and its second order derivative.

So, let's $\mathbf{c}(t)$ be a Bezier curve, and $\ddot{\mathbf{c}}(t)$ it's derivative.

Is $\mathbf{w}(t) = \mathbf{c}(t) \times \ddot{\mathbf{c}}(t)$ a Bezier curve?

If it is the case, is it also the case in general ?

Thanks a lot for your time and answers. Sincerely,

Steve

3

There are 3 best solutions below

0
On BEST ANSWER

@Henning Makholm One can say a little more.

Let us recall that a Bézier curve with degree $n$ (particular cases $n=2$: quadratic, $n=3$ cubic) can be defined as any expression of the form:

$$\tag{1}\vec{OM}=\vec{u_0}+\vec{u_1}t+\vec{u_2}t^2+\vec{u_3}t^3+\cdots+\vec{u_{n-1}}t^{n-1}+\vec{u_n}t^n \ \ \text{with} \ \ \vec{u_n}\neq 0$$

(see example at the bottom of this text.)

(this well known result is due to the fact that every polynomial with degree $\leq n$ can be decomposed onto the Bernstein polynomials of order $n$ that constitute a basis of the vector space of polynomials with degree $\leq n$).

Result: If $\mathbf{c}(t)$ describes a Bézier curve with degree $n$, the curve

$$\mathbf{w}(t) = \mathbf{c}(t) \times \ddot{\mathbf{c}}(t)$$

still is a Bézier curve, with degree $\leq 2n-3.$

Proof: The second derivative of (1) is

$$\tag{2}\ddot{\vec{OM}}=2\vec{u_2}+6\vec{u_3}t+\cdots+(n-2)(n-1)\vec{u_{n-1}}t^{n-3}+n(n-1)\vec{u_n}t^{n-2}$$

Taking the cross product of (1) and (2), one gets, by distributivity:

$$\vec{u_0} \times 2\vec{u_2}+ \cdots + \vec{v}t^{n-3}+n(n-1)\underbrace{\vec{u_n}\times \vec{u_n}}_{\vec{0}}t^{2n-2}$$

with $\vec{v}:=2(n-1) \vec{u_{n-1}} \times \vec{u_{n-2}}$.

Two particular cases:

  • (A) A quadratic Bézier curve is transformed into a straight line ($n=2 \to 2n-3=1$).

  • (B) A cubic Bézier curve is transformed into a cubic Bézier curve ($n=3 \to 2n-3=3$).


Example of a quadratic Bézier curve :

$$\vec{OM}=(1-t)^2\vec{OA}+2t(1-t)\vec{OB}+t^2\vec{OC}=\vec{OA}+2t\vec{AB}+t^2(\vec{BA}+\vec{BC}).$$

1
On

Every parametric curve where each coordinate is a polynomial in the parameter can be expressed as a Bézier curve.

Thus also the cross product of Bézier curves. The order of the resulting curve will in general (except in degenerate cases) be the sum of the orders of the two curves you multiply -- so you can't, for example, multiply two cubic curves and expect to get a cubic curve back.

7
On

Thanks for your answers. I was in fact trying to compute the coefficients of this Bezier curve, while proving that the product is indeed a Bezier curve.

A friend helped me to obtain this:

We write:

  • $\mathbf{c}(t) = \sum_{i=0}^n \mathbf{P}_i B^n_i(t)$
  • $\mathbf{\ddot{c}}(t) = \sum_{i=0}^{n-2} \mathbf{Q}_i B^{n-2}_i(t)$

We can rewrite a Bernstein polynom as as polynom of higher degree so:

  • $\mathbf{\ddot{c}}(t) = \sum_{i=0}^{n} \mathbf{R}_i B^{n}_i(t)$

Then

$\mathbf{w}(t) = \sum_{i=0}^{n} \sum_{j=0}^{n}( \mathbf{P}_i \times \mathbf{R}_j) B^{n}_i(t)B^{n}_j(t)$

$ B^{n}_i(t)B^{n}_j(t) ={{n}\choose{i}}{{n}\choose{j}} t^i(1-t)^{n-i}t^j(1-t)^{n-j}( \mathbf{P}_i \times \mathbf{R}_{k-i})$

We write $k = i + j$

$\mathbf{w}(t) = \sum_{k=0}^{2n} [\sum_{i\in[0,n]\cap[k-n,k]}^{n} {{n}\choose{i}}{{n}\choose{k-i}} ( \mathbf{P}_i \times \mathbf{R}_{k-i})\mathbf{)} t^k(1-t)^{2n-k}]$

$\mathbf{w}(t) = \sum_{k=0}^{2n}{{2n}\choose{k}}t^k(1-t)^{2n-k}\alpha_k) $

with $\alpha_k = \sum_{i\in[0,n]\cap[k-n,k]}^{n} {{n}\choose{i}}{{n}\choose{k-i}} ( \mathbf{P}_i \times \mathbf{R}_{k-i})\mathbf{)} / {{{2n}\choose{k}}}$

Thus

$\mathbf{w}(t) = \sum_{k=0}^{2n} B^{2n}_k(t)\alpha_k$

Does that seem right ?