Expand description
This is a temporary module that contains a SIMD version of flattening of cubic curves, as
well as some code that was copied from kurbo, which is needed to reimplement the
full flatten
method.
Structsยง
- Flatten
Ctx - The context needed for flattening curves.
- Flatten
Params ๐ - Point32 ๐
Constantsยง
- MAX_
QUADS ๐ - This limit was chosen based on the pre-existing GitHub gist. This limit should not be hit in normal operation, but might be hit for very large transforms.
- TO_
QUAD_ ๐TOL
Traitsยง
- Callback ๐
- Flatten
Params ๐Ext
Functionsยง
- approx_
parabola_ ๐integral - An approximation to $\int (1 + 4x^2) ^ -0.25 dx$
- approx_
parabola_ ๐integral_ simd - approx_
parabola_ ๐integral_ simd_ x4 - approx_
parabola_ ๐inv_ integral - An approximation to the inverse parabola integral.
- approx_
parabola_ ๐inv_ integral_ simd - estimate_
num_ ๐quads - estimate_
subdiv_ ๐simd - eval_
cubics_ ๐simd - eval_
simd ๐ - flatten ๐
- See the docs for the kurbo implementation of flattening: https://docs.rs/kurbo/latest/kurbo/fn.flatten.html
- flatten_
cubic_ ๐simd - is_
finite_ ๐simd - output_
lines_ ๐simd - pt_
splat_ ๐simd