[package]
edition = "2021"
name = "parry2d"
version = "0.26.1"
authors = ["Sébastien Crozet <developer@crozet.re>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "2 dimensional collision detection library in Rust."
homepage = "https://parry.rs"
documentation = "https://parry.rs/docs"
readme = "README.md"
keywords = [
"collision",
"geometry",
"distance",
"ray",
"convex",
]
categories = [
"science",
"game-development",
"mathematics",
"wasm",
]
license = "Apache-2.0"
repository = "https://github.com/dimforge/parry"
[package.metadata.docs.rs]
rustdoc-args = [
"-Zunstable-options",
"--generate-link-to-definition",
]
cargo-args = [
"-Zunstable-options",
"-Zrustdoc-scrape-examples",
]
[badges.maintenance]
status = "actively-developed"
[features]
alloc = ["hashbrown"]
bytemuck-serialize = [
"bytemuck",
"glamx/bytemuck",
]
default = [
"required-features",
"std",
"spade",
]
dim2 = []
encase = [
"dep:encase",
"glamx/encase",
]
enhanced-determinism = [
"simba/libm_force",
"indexmap",
"glamx/libm",
]
f32 = []
improved_fixed_point_support = []
parallel = ["rayon"]
required-features = [
"dim2",
"f32",
]
rkyv = [
"dep:rkyv",
"glamx/rkyv",
]
serde-serialize = [
"serde",
"serde_arrays",
"glamx/serde",
"arrayvec/serde",
"bitflags/serde",
"hashbrown?/serde",
"spade?/serde",
]
simd-is-enabled = []
simd-nightly = [
"simba/portable_simd",
"simd-is-enabled",
]
simd-stable = [
"simba/wide",
"simd-is-enabled",
]
spade = [
"dep:spade",
"alloc",
]
std = [
"alloc",
"glamx/std",
"slab",
"simba/std",
"arrayvec/std",
"spade?/std",
"thiserror/std",
"ena",
]
[lib]
name = "parry2d"
path = "src/lib.rs"
required-features = ["required-features"]
[[example]]
name = "aabb2d"
path = "examples/aabb2d.rs"
doc-scrape-examples = true
[[example]]
name = "ball2d"
path = "examples/ball2d.rs"
doc-scrape-examples = true
[[example]]
name = "bounding_sphere2d"
path = "examples/bounding_sphere2d.rs"
doc-scrape-examples = true
[[example]]
name = "contact_query2d"
path = "examples/contact_query2d.rs"
doc-scrape-examples = true
[[example]]
name = "convex2d"
path = "examples/convex2d.rs"
doc-scrape-examples = true
[[example]]
name = "convex_hull2d"
path = "examples/convex_hull2d.rs"
doc-scrape-examples = true
[[example]]
name = "convex_try_new2d"
path = "examples/convex_try_new2d.rs"
doc-scrape-examples = true
[[example]]
name = "cuboid2d"
path = "examples/cuboid2d.rs"
doc-scrape-examples = true
[[example]]
name = "distance_query2d"
path = "examples/distance_query2d.rs"
doc-scrape-examples = true
[[example]]
name = "plane2d"
path = "examples/plane2d.rs"
doc-scrape-examples = true
[[example]]
name = "point_in_poly2d"
path = "examples/point_in_poly2d.rs"
doc-scrape-examples = true
[[example]]
name = "polygons_intersection2d"
path = "examples/polygons_intersection2d.rs"
doc-scrape-examples = true
[[example]]
name = "polyline2d"
path = "examples/polyline2d.rs"
doc-scrape-examples = true
[[example]]
name = "project_point2d"
path = "examples/project_point2d.rs"
[[example]]
name = "proximity_query2d"
path = "examples/proximity_query2d.rs"
doc-scrape-examples = true
[[example]]
name = "raycasts_animated"
path = "examples/raycasts_animated.rs"
[[example]]
name = "solid_point_query2d"
path = "examples/solid_point_query2d.rs"
doc-scrape-examples = true
[[example]]
name = "solid_ray_cast2d"
path = "examples/solid_ray_cast2d.rs"
doc-scrape-examples = true
[[example]]
name = "time_of_impact_query2d"
path = "examples/time_of_impact_query2d.rs"
doc-scrape-examples = true
[[example]]
name = "utils2d"
path = "examples/utils2d.rs"
[dependencies.approx]
version = "0.5"
default-features = false
[dependencies.arrayvec]
version = "0.7"
default-features = false
[dependencies.bitflags]
version = "2.3"
[dependencies.bytemuck]
version = "1"
features = ["derive"]
optional = true
[dependencies.downcast-rs]
version = "2"
features = ["sync"]
default-features = false
[dependencies.either]
version = "1"
default-features = false
[dependencies.ena]
version = "0.14.3"
optional = true
default-features = false
[dependencies.encase]
version = "0.12"
optional = true
[dependencies.foldhash]
version = "0.2"
default-features = false
[dependencies.glamx]
version = "0.1.2"
features = [
"nostd-libm",
"approx",
]
default-features = false
[dependencies.hashbrown]
version = "0.16"
features = ["default-hasher"]
optional = true
default-features = false
[dependencies.indexmap]
version = "2"
features = ["serde"]
optional = true
[dependencies.log]
version = "0.4"
[dependencies.num-derive]
version = "0.4"
[dependencies.num-traits]
version = "0.2"
default-features = false
[dependencies.ordered-float]
version = "5"
default-features = false
[dependencies.rayon]
version = "1"
optional = true
[dependencies.rkyv]
version = "0.8"
features = [
"bytecheck",
"alloc",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true
[dependencies.serde_arrays]
version = "0.2"
optional = true
[dependencies.simba]
version = "0.9"
default-features = false
[dependencies.slab]
version = "0.4"
optional = true
[dependencies.smallvec]
version = "1"
[dependencies.spade]
version = "2"
optional = true
default-features = false
[dependencies.thiserror]
version = "2"
default-features = false
[dev-dependencies.kiss3d]
version = "0.39"
[dev-dependencies.oorandom]
version = "11"
[dev-dependencies.ptree]
version = "0.4.0"
[dev-dependencies.rand]
version = "0.9"
[dev-dependencies.simba]
version = "0.9"
default-features = false
[dev-dependencies.web-time]
version = "1"
[lints]