Blender Git Statistics -> Branches -> smooth-curves

"Smooth-curves" branch

Total commits : 6
Total committers : 3
First Commit : April 29, 2017
Latest Commit : April 29, 2017

Commits by Date

DateNumber of Commits
April 29, 20176


AuthorNumber of Commits
Benoit Bolsee3
Alexander Gavrilov2
Dalai Felinto1

Popular Files

FilenameTotal Edits

Latest commits Feed

April 29, 2017, 18:53 (GMT)
Reimplement curve smoothing in a clear way without premature optimizations.

The original code tries too hard to avoid allocating more memory, which
reduces clarity and is not necessary here as there aren't that many
f-curve keyframes in any case. Rewriting the code with a generic solver
somehow fixed the behavior of the curve in the totally unclamped case,
which suggests that there was a bug hidden in the optimizations.

In addition, the new solver allows treating the case when an Auto curve
segment ends at a Vector handle specially as a zero acceleration boundary
April 29, 2017, 08:25 (GMT)
Fix BKE_nurb_handle_calc_smooth: no clamp 'HD_AUTO' handles.
April 29, 2017, 08:25 (GMT)
Repeat the curve smoothing pass when clamping handles.

When non-extreme Auto Clamped handles are clamped to prevent
overshoot, it creates a discontinuity with the preceeding part
of the curve that was computed under assumption of no clamping.
Thus to avoid jumps in certain situations it is necessary to
lock these handles and run the smoothing pass again.

Handles are locked in this way only if they are clamped in the
right direction; points that are trying to move against the curve
are clamped to horizontal but left free to be modified by the
subsequent pass.
April 29, 2017, 08:25 (GMT)
Fix clamping of auto handle in some rare case.
April 29, 2017, 08:25 (GMT)
force fcurve AUTO handlers to use 1/3 of the distance for smoothness

Note: this is also used by the curve code. The magic number 2.5614f
comes from review 290361776e5858b3903a83c0cddf722b8340e699
April 29, 2017, 08:25 (GMT)
Implement smarth algorithm to compute automatically the bezier handle that
produce no acceleration discontinuities in a series of auto handle points.
The result trajectory is physically as 'smooth' as possible given a set
of fixed point and a start and end location and velocity.
See BKE_nurb_handle_calc_smooth()

MiikaHweb - Blender Git Statistics v1.06
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021