[[bin]]
name = "csgrs"
path = "src/main.rs"
[dependencies.bevy]
optional = true
version = "0.16.0"
[dependencies.chull]
optional = true
version = "0.2.4"
[dependencies.contour_tracing]
features = ["array"]
optional = true
version = "1.0.12"
[dependencies.core2]
features = ["alloc"]
version = "0.4"
[dependencies.dxf]
optional = true
version = "0.6"
[dependencies.either]
version = "1.15"
[dependencies.fast-surface-nets]
optional = true
version = "0.2.1"
[dependencies.geo]
default-features = false
version = "0.29.3"
[dependencies.geo-buf]
optional = true
version = "0.1.0"
[dependencies.hashbrown]
optional = true
version = "0.15"
[dependencies.hershey]
optional = true
version = "0.1.2"
[dependencies.image]
optional = true
version = "0.25"
[dependencies.nalgebra]
version = "0.33"
[dependencies.nom]
optional = true
version = "7.1"
[dependencies.parry3d]
optional = true
version = "0.19.0"
[dependencies.parry3d-f64]
optional = true
version = "0.19.0"
[dependencies.rapier3d]
optional = true
version = "0.24.0"
[dependencies.rapier3d-f64]
optional = true
version = "0.24.0"
[dependencies.rayon]
optional = true
version = "1.10"
[dependencies.robust]
default-features = false
features = ["no_std"]
version = "1.1.0"
[dependencies.small_str]
version = "0.1"
[dependencies.stl_io]
optional = true
version = "0.8"
[dependencies.svg]
optional = true
version = "0.18"
[dependencies.thiserror]
version = "2.0"
[dependencies.ttf-parser]
optional = true
version = "0.25"
[dependencies.ttf-utils]
optional = true
package = "ttf-parser-utils"
version = "0.1"
[features]
bevymesh = ["bevy"]
chull-io = ["chull"]
default = ["f64", "stl-io", "dxf-io", "chull-io", "metaballs", "hashmap", "sdf", "offset", "delaunay", "truetype-text"]
delaunay = ["geo/spade"]
dxf-io = ["dxf"]
earcut = ["geo/earcutr"]
f32 = ["rapier3d", "parry3d"]
f64 = ["rapier3d-f64", "parry3d-f64"]
hashmap = ["dep:hashbrown"]
hershey-text = ["hershey"]
image-io = ["image", "contour_tracing"]
metaballs = ["fast-surface-nets", "hashmap"]
offset = ["dep:geo-buf"]
parallel = ["rayon", "geo/multithreading", "hashbrown?/rayon", "parry3d?/parallel", "parry3d-f64?/parallel", "rapier3d?/parallel", "rapier3d-f64?/parallel"]
sdf = ["fast-surface-nets"]
stl-io = ["stl_io"]
svg-io = ["svg", "nom"]
truetype-text = ["ttf-parser", "ttf-utils"]
[lib]
crate-type = ["cdylib", "rlib"]
name = "csgrs"
path = "src/lib.rs"
[package]
authors = ["Timothy Schmidt <timschmidt@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["game-development", "graphics", "mathematics", "simulation", "wasm"]
description = "Constructive solid geometry (CSG) on meshes using BSP trees in Rust"
edition = "2024"
keywords = ["geometry", "physics", "csg", "slicing", "offsetting"]
license = "MIT"
name = "csgrs"
readme = "readme.md"
repository = "https://github.com/timschmidt/csgrs"
rust-version = "1.85.1"
version = "0.17.3"
[profile.embedded]
inherits = "release"
opt-level = "z"
[profile.release]
debug = 0
debug-assertions = false
lto = true
opt-level = 3
overflow-checks = false
[target.'cfg(any(target_arch = "wasm32", target_arch = "wasm64"))'.dependencies.getrandom]
features = ["wasm_js"]
optional = true
version = "0.3"
[target.'cfg(any(target_arch = "wasm32", target_arch = "wasm64"))'.dependencies.wasm-bindgen]
optional = true
version = "0.2"