[package]
edition = "2024"
rust-version = "1.95.0"
name = "use-geometry"
version = "0.2.1"
authors = ["RustUse Contributors"]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Facade crate for the RustUse geometry workspace."
homepage = "https://rustuse.org"
documentation = "https://docs.rs/use-geometry"
readme = "README.md"
keywords = [
"geometry",
"facade",
"2d",
"shapes",
"rustuse",
]
categories = [
"mathematics",
"science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/RustUse/use-geometry"
resolver = "2"
[package.metadata.docs.rs]
all-features = true
[features]
affine = ["dep:use-affine"]
angle = ["dep:use-angle"]
archimedean = ["dep:use-archimedean"]
bezier = ["dep:use-bezier"]
bounds = ["dep:use-bounds"]
catalan-solid = ["dep:use-catalan-solid"]
cell = ["dep:use-cell"]
circle = ["dep:use-circle"]
complex = ["dep:use-complex"]
configuration = ["dep:use-configuration"]
congruence = ["dep:use-congruence"]
conic = ["dep:use-conic"]
containment = ["dep:use-containment"]
coordinate = ["dep:use-coordinate"]
coxeter = ["dep:use-coxeter"]
crease = ["dep:use-crease"]
curve = ["dep:use-curve"]
default = ["full"]
delaunay = ["dep:use-delaunay"]
dihedral = ["dep:use-dihedral"]
dimension = ["dep:use-dimension"]
distance = ["dep:use-distance"]
duality = ["dep:use-duality"]
face = ["dep:use-face"]
folding = ["dep:use-folding"]
full = [
"affine",
"angle",
"archimedean",
"bezier",
"bounds",
"catalan-solid",
"cell",
"circle",
"complex",
"configuration",
"congruence",
"conic",
"containment",
"coordinate",
"coxeter",
"crease",
"curve",
"delaunay",
"dihedral",
"dimension",
"distance",
"duality",
"face",
"folding",
"hull",
"hyperplane",
"hypersphere",
"incidence",
"intersection",
"inversion",
"johnson-solid",
"line",
"linkage",
"manifold",
"mesh",
"orientation",
"origami",
"orthotope",
"plane",
"point",
"polygon",
"polyhedral-net",
"polyhedron",
"polyline",
"polytope",
"projection",
"projective",
"ray",
"rectangle",
"reflection",
"regular-polytope",
"rigid-folding",
"schlafli",
"segment",
"similarity",
"simplex",
"sphere",
"spline",
"surface",
"tessellation",
"torus",
"transform",
"triangle",
"triangulation",
"unfolding",
"uniform-polytope",
"voronoi",
"wythoff",
]
hull = ["dep:use-hull"]
hyperplane = ["dep:use-hyperplane"]
hypersphere = ["dep:use-hypersphere"]
incidence = ["dep:use-incidence"]
intersection = ["dep:use-intersection"]
inversion = ["dep:use-inversion"]
johnson-solid = ["dep:use-johnson-solid"]
line = ["dep:use-line"]
linkage = ["dep:use-linkage"]
manifold = ["dep:use-manifold"]
mesh = ["dep:use-mesh"]
orientation = ["dep:use-orientation"]
origami = ["dep:use-origami"]
orthotope = ["dep:use-orthotope"]
plane = ["dep:use-plane"]
point = ["dep:use-point"]
polygon = ["dep:use-polygon"]
polyhedral-net = ["dep:use-polyhedral-net"]
polyhedron = ["dep:use-polyhedron"]
polyline = ["dep:use-polyline"]
polytope = ["dep:use-polytope"]
projection = ["dep:use-projection"]
projective = ["dep:use-projective"]
ray = ["dep:use-ray"]
rectangle = ["dep:use-rectangle"]
reflection = ["dep:use-reflection"]
regular-polytope = ["dep:use-regular-polytope"]
rigid-folding = ["dep:use-rigid-folding"]
schlafli = ["dep:use-schlafli"]
segment = ["dep:use-segment"]
similarity = ["dep:use-similarity"]
simplex = ["dep:use-simplex"]
sphere = ["dep:use-sphere"]
spline = ["dep:use-spline"]
surface = ["dep:use-surface"]
tessellation = ["dep:use-tessellation"]
torus = ["dep:use-torus"]
transform = ["dep:use-transform"]
triangle = ["dep:use-triangle"]
triangulation = ["dep:use-triangulation"]
unfolding = ["dep:use-unfolding"]
uniform-polytope = ["dep:use-uniform-polytope"]
voronoi = ["dep:use-voronoi"]
wythoff = ["dep:use-wythoff"]
[lib]
name = "use_geometry"
path = "src/lib.rs"
[[example]]
name = "validated_construction"
path = "examples/validated_construction.rs"
required-features = ["full"]
[[test]]
name = "facade_feature_matrix"
path = "tests/facade_feature_matrix.rs"
required-features = [
"folding",
"mesh",
"point",
"polyhedral-net",
"regular-polytope",
"schlafli",
]
[[test]]
name = "property_invariants"
path = "tests/property_invariants.rs"
required-features = ["full"]
[[test]]
name = "validated_api"
path = "tests/validated_api.rs"
required-features = ["full"]
[dependencies.use-affine]
version = "0.0.6"
optional = true
[dependencies.use-angle]
version = "0.0.6"
optional = true
[dependencies.use-archimedean]
version = "0.0.6"
optional = true
[dependencies.use-bezier]
version = "0.0.6"
optional = true
[dependencies.use-bounds]
version = "0.0.6"
optional = true
[dependencies.use-catalan-solid]
version = "0.0.6"
optional = true
[dependencies.use-cell]
version = "0.0.6"
optional = true
[dependencies.use-circle]
version = "0.0.6"
optional = true
[dependencies.use-complex]
version = "0.0.6"
optional = true
package = "use-geometric-complex"
[dependencies.use-configuration]
version = "0.0.6"
optional = true
[dependencies.use-congruence]
version = "0.0.6"
optional = true
[dependencies.use-conic]
version = "0.0.6"
optional = true
[dependencies.use-containment]
version = "0.0.6"
optional = true
[dependencies.use-coordinate]
version = "0.0.6"
optional = true
[dependencies.use-coxeter]
version = "0.0.6"
optional = true
[dependencies.use-crease]
version = "0.0.6"
optional = true
[dependencies.use-curve]
version = "0.0.6"
optional = true
[dependencies.use-delaunay]
version = "0.0.6"
optional = true
[dependencies.use-dihedral]
version = "0.0.6"
optional = true
[dependencies.use-dimension]
version = "0.0.6"
optional = true
[dependencies.use-distance]
version = "0.0.6"
optional = true
[dependencies.use-duality]
version = "0.0.6"
optional = true
[dependencies.use-face]
version = "0.0.6"
optional = true
[dependencies.use-folding]
version = "0.0.6"
optional = true
[dependencies.use-hull]
version = "0.0.6"
optional = true
[dependencies.use-hyperplane]
version = "0.0.6"
optional = true
[dependencies.use-hypersphere]
version = "0.0.6"
optional = true
[dependencies.use-incidence]
version = "0.0.6"
optional = true
[dependencies.use-intersection]
version = "0.0.6"
optional = true
[dependencies.use-inversion]
version = "0.0.6"
optional = true
[dependencies.use-johnson-solid]
version = "0.0.6"
optional = true
[dependencies.use-line]
version = "0.2.1"
optional = true
[dependencies.use-linkage]
version = "0.0.6"
optional = true
[dependencies.use-manifold]
version = "0.0.6"
optional = true
[dependencies.use-mesh]
version = "0.0.6"
optional = true
[dependencies.use-orientation]
version = "0.1.0"
optional = true
[dependencies.use-origami]
version = "0.0.6"
optional = true
[dependencies.use-orthotope]
version = "0.0.6"
optional = true
[dependencies.use-plane]
version = "0.1.0"
optional = true
[dependencies.use-point]
version = "0.1.0"
optional = true
[dependencies.use-polygon]
version = "0.0.6"
optional = true
[dependencies.use-polyhedral-net]
version = "0.0.6"
optional = true
[dependencies.use-polyhedron]
version = "0.0.6"
optional = true
[dependencies.use-polyline]
version = "0.0.6"
optional = true
[dependencies.use-polytope]
version = "0.0.6"
optional = true
[dependencies.use-projection]
version = "0.0.6"
optional = true
[dependencies.use-projective]
version = "0.0.6"
optional = true
[dependencies.use-ray]
version = "0.1.0"
optional = true
[dependencies.use-rectangle]
version = "0.0.6"
optional = true
[dependencies.use-reflection]
version = "0.0.6"
optional = true
[dependencies.use-regular-polytope]
version = "0.0.6"
optional = true
[dependencies.use-rigid-folding]
version = "0.0.6"
optional = true
[dependencies.use-schlafli]
version = "0.0.6"
optional = true
[dependencies.use-segment]
version = "0.0.6"
optional = true
[dependencies.use-similarity]
version = "0.0.6"
optional = true
[dependencies.use-simplex]
version = "0.0.6"
optional = true
[dependencies.use-sphere]
version = "0.0.6"
optional = true
[dependencies.use-spline]
version = "0.0.6"
optional = true
[dependencies.use-surface]
version = "0.0.6"
optional = true
[dependencies.use-tessellation]
version = "0.0.6"
optional = true
[dependencies.use-torus]
version = "0.0.6"
optional = true
[dependencies.use-transform]
version = "0.0.6"
optional = true
[dependencies.use-triangle]
version = "0.0.6"
optional = true
[dependencies.use-triangulation]
version = "0.0.6"
optional = true
[dependencies.use-unfolding]
version = "0.0.6"
optional = true
[dependencies.use-uniform-polytope]
version = "0.0.6"
optional = true
[dependencies.use-voronoi]
version = "0.0.6"
optional = true
[dependencies.use-wythoff]
version = "0.0.6"
optional = true
[dev-dependencies.proptest]
version = "1.11.0"
features = ["std"]
default-features = false
[lints.clippy]
expect_used = "warn"
multiple_crate_versions = "allow"
todo = "deny"
unimplemented = "deny"
unwrap_used = "warn"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "forbid"