refactor(blend): evaluate the Bézier with de Casteljau from the kernel
BLEND summed Bernstein terms using a binomial-coefficient table with entries for degrees three and five — the two it builds — and a fallback of one for everything else. Correct today, and quietly wrong the moment a third continuity mode is added. De Casteljau needs no coefficients at all, works at any degree, and is steadier: the Bernstein terms are large coefficients times small powers and they cancel, while repeated interpolation only ever averages neighbours. Curvature through three points moves with it, since both are the 3D arithmetic a blend needs and neither has a planar counterpart to delegate to. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
77a9167e34
commit
0677dd146c
2 changed files with 21 additions and 40 deletions
2
Cargo.lock
generated
2
Cargo.lock
generated
|
|
@ -935,7 +935,7 @@ checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
|
|||
[[package]]
|
||||
name = "cadkernel"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/HakanSeven12/cadkernel.git#e4c9fe626a60fd1500e8f2264e5a712e939c4027"
|
||||
source = "git+https://github.com/HakanSeven12/cadkernel.git#69a8bf2b747c8b0a4abe6a571859c4c3a4f610d2"
|
||||
dependencies = [
|
||||
"cavalier_contours",
|
||||
]
|
||||
|
|
|
|||
Loading…
Reference in a new issue