[package]
name = "enterpolation"
authors = ["Nicolas Klenert <klenert.nicolas@gmail.com>"]
exclude = ["examples/*", ".gitignore", "CHANGELOG.md", "CONTRIBUTING.md"]
edition = "2024"
description = "A library for creating and computing interpolations, extrapolations and smoothing of generic data points."
license = "MIT OR Apache-2.0"
documentation = "https://docs.rs/enterpolation"
repository = "https://github.com/NicolasKlenert/enterpolation"
readme = "README.md"
keywords = ["interpolation", "curve", "spline", "bezier", "nurbs"]
categories = ["graphics", "mathematics", "no-std"]
version = "0.3.0"
[dependencies]
topology-traits = { version = "0.1.2", default-features = false }
num-traits = { version = "0.2.19", default-features = false }
serde = { version = "1.0.219", optional = true, default-features = false, features = [
"derive",
] }
[dev-dependencies]
assert_float_eq = { version = "1.1.4", default-features = false }
criterion = { version = "0.5" }
palette = "0.7.6"
image = "0.25.6"
[features]
default = ["std", "linear", "bezier", "bspline"]
std = [
"num-traits/std",
"assert_float_eq/std",
"topology-traits/std",
"serde?/std",
]
libm = ["num-traits/libm", "topology-traits/libm"]
linear = []
bezier = []
bspline = []
serde = ["dep:serde"]
[[bench]]
name = "benches"
harness = false
[[example]]
name = "bspline_reasoning"
path = "examples/bspline_reasoning.rs"
required-features = ["linear", "bezier", "bspline"]
[[example]]
name = "gradient"
path = "examples/gradient.rs"
required-features = ["bspline"]
[[example]]
name = "linear"
path = "examples/linear.rs"
required-features = ["std", "linear"]
[[example]]
name = "noise"
path = "examples/noise.rs"
required-features = ["bspline"]
[[example]]
name = "nurbs"
path = "examples/nurbs.rs"
required-features = ["bspline"]
[[example]]
name = "plateaus"
path = "examples/plateaus.rs"
required-features = ["linear"]
[badges.maintenance]
status = "actively-developed"
[package.metadata.cargo-all-features]
skip_feature_sets = [["std", "libm"]]
always_include_features = [["std", "libm"]]
max_combination_size = 4