1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! Adaptive and uniform curve/surface sampling.
//!
//! # Uniform sampling
//!
//! [`sample_uniform`] and [`sample_uniform_with_params`] divide a parameter
//! range into equal-size steps and evaluate the curve at each step. This is
//! fast but may under-sample highly curved regions.
//!
//! # Deflection-based (adaptive) sampling
//!
//! [`sample_deflection`] uses recursive midpoint subdivision: it measures the
//! perpendicular distance from the true curve point at each interval midpoint
//! to the straight chord between the interval endpoints. If that distance
//! (the "sag") exceeds `max_deflection`, the interval is split in two. This
//! guarantees that every chord's midpoint deviation is within the requested
//! tolerance.
//!
//! # Arc-length parameterized sampling
//!
//! [`sample_arc_length`] places `n` points at approximately equal arc-length
//! spacing. It builds a fine chord-length table (256 segments) and bisects to
//! find the parameter at each target fraction.
//!
//! # Curvature-adaptive sampling
//!
//! [`sample_curvature`] subdivides intervals where the product of curvature
//! and interval arc-length exceeds a tolerance. Produces denser samples in
//! high-curvature regions of a NURBS curve.
//!
//! # Surface grid sampling
//!
//! [`surface_grid`] evaluates a regular N×M grid of points over a parametric
//! surface domain.
//!
pub use sample_arc_length;
pub use sample_curvature;
pub use sample_deflection;
pub use surface_grid;
pub use ;