Take the 2-minute tour ×
Computer Science Stack Exchange is a question and answer site for students, researchers and practitioners of computer science. It's 100% free, no registration required.

I like to implement an arc-length Parameterization of a cubic bezier curve. So far I have implemented the method of calculating the arc length of the curve and now I'm stuck at calculating the times to divide the original curve into equal arc length segments.

What i have:

  • $m = 5$ The number of segments to create
  • $i = 0,1, ...., m$
  • $s = \text{arc length}$
  • $l = s / m$
  • $t_0,t_1,...,t_n$ The parameter values of the original bezier curve.

The formula I have: $$\int_{t_0}^{\tilde{t_i}} ds/dt = i * \tilde{l}$$

To calculate the value of $\tilde{t_i}$ I would have to go through 2 steps:

  1. Calculate a spline segment indexed by $j$ which satisfies $\sum_{p=0}^{j-1} l_p \le i * \tilde{l} < \sum_{p=0}^{j}l_p$
  2. Compute $\tilde{t_i}$ such that $\int_{t_j}^{\tilde{t_i}}ds/dt * dt = i * \tilde{l} - \sum_{p=0}^{j-1}l_p$

To my questions:

  1. What is $\tilde{l}$? I know it is an approximated value but is it neccesery to be different or could just use $l$?

  2. The first calculation of $j$ makes sense, but how would I solve the second to $\tilde{t_i}$?

Maybe I just don't understand correctly what the integral $\int_a^bds/dt*dt$ is or how I can calculate it programmatically.

I am following this paper.

share|improve this question
    
Do you have any progress you would like to share as an answer? –  Merbs Nov 29 '12 at 8:07
add comment

Know someone who can answer? Share a link to this question via email, Google+, Twitter, or Facebook.

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.