[package]
edition = "2021"
rust-version = "1.88"
name = "axiolid"
version = "0.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Feature-gated facade for Axiolid's format-neutral geometry stack"
homepage = "https://axiolid.github.io/kernel/"
readme = "README.md"
license = "MPL-2.0"
repository = "https://github.com/axiolid/kernel"
[package.metadata.axiolid]
allowed-internal-dependencies = [
"axiolid-backend-cpu",
"axiolid-backend-gpu",
"axiolid-brep",
"axiolid-core",
"axiolid-curve",
"axiolid-field",
"axiolid-field-ops",
"axiolid-construct",
"axiolid-heal",
"axiolid-contracts",
"axiolid-dispatch",
"axiolid-mesh-boolean-contract",
"axiolid-mesh-compile-contract",
"axiolid-mesh-contracts",
"axiolid-mesh-section-contract",
"axiolid-measure",
"axiolid-mesh",
"axiolid-model",
"axiolid-nurbs",
"axiolid-overlay",
"axiolid-primitive",
"axiolid-profile",
"axiolid-spatial",
"axiolid-surface",
"axiolid-tessellation-contract",
"axiolid-topology",
]
architecture-version = 1
domain = "public"
format-neutral = true
layer = "facade"
public = true
role = "facade"
[features]
advanced = [
"discrete",
"parametric",
"heal",
]
brep = [
"topology",
"dep:axiolid-brep",
]
contracts = ["dep:axiolid-contracts"]
cpu = ["dep:axiolid-backend-cpu"]
curves = ["dep:axiolid-curve"]
default = [
"mesh",
"cpu",
]
discrete = [
"mesh",
"profiles",
"primitives",
"tessellation",
"spatial",
"measure",
"mesh-boolean",
"mesh-section",
"generate",
"cpu",
]
dispatch-mesh-boolean = [
"mesh-boolean",
"dep:axiolid-dispatch",
"axiolid-dispatch/mesh-boolean",
]
dispatch-mesh-section = [
"mesh-section",
"dep:axiolid-dispatch",
"axiolid-dispatch/mesh-section",
]
field = ["dep:axiolid-field"]
field-navigation = [
"field-ops",
"axiolid-field-ops/navigation",
]
field-ops = [
"field",
"dep:axiolid-field-ops",
]
full = [
"advanced",
"parallel",
"simd",
"gpu",
]
generate = [
"mesh",
"profiles",
"curves",
"primitives",
"mesh-boolean",
"brep",
"dep:axiolid-construct",
]
gpu = [
"graph-compile",
"dep:axiolid-backend-gpu",
]
graph-compile = [
"contracts",
"model",
"mesh",
"dep:axiolid-mesh-compile-contract",
]
heal = [
"mesh",
"dep:axiolid-heal",
]
measure = [
"mesh",
"dep:axiolid-measure",
]
mesh = ["dep:axiolid-mesh"]
mesh-boolean = [
"mesh-contracts",
"dep:axiolid-mesh-boolean-contract",
]
mesh-contracts = [
"contracts",
"mesh",
"dep:axiolid-mesh-contracts",
]
mesh-section = [
"mesh-contracts",
"dep:axiolid-mesh-section-contract",
]
model = [
"mesh",
"profiles",
"curves",
"surfaces",
"topology",
"primitives",
"dep:axiolid-model",
]
nurbs = [
"curves",
"surfaces",
"dep:axiolid-nurbs",
]
overlay = ["dep:axiolid-overlay"]
parallel = [
"cpu",
"axiolid-backend-cpu/parallel",
]
parametric = [
"model",
"curves",
"surfaces",
"topology",
"nurbs",
]
primitives = ["dep:axiolid-primitive"]
profiles = ["dep:axiolid-profile"]
simd = [
"cpu",
"axiolid-backend-cpu/simd",
]
spatial = [
"mesh",
"dep:axiolid-spatial",
]
surfaces = [
"curves",
"dep:axiolid-surface",
]
tessellation = [
"mesh",
"curves",
"surfaces",
"topology",
"dep:axiolid-tessellation-contract",
]
topology = [
"curves",
"surfaces",
"dep:axiolid-topology",
]
[lib]
name = "axiolid"
path = "src/lib.rs"
[[test]]
name = "api_traits"
path = "tests/api_traits.rs"
[[test]]
name = "brep_facade"
path = "tests/brep_facade.rs"
[[test]]
name = "generate_facade"
path = "tests/generate_facade.rs"
[[test]]
name = "nurbs_feature"
path = "tests/nurbs_feature.rs"
[dependencies.axiolid-backend-cpu]
version = "0.1.0"
optional = true
default-features = false
[dependencies.axiolid-backend-gpu]
version = "0.1.0"
optional = true
default-features = false
[dependencies.axiolid-brep]
version = "0.1.0"
optional = true
[dependencies.axiolid-construct]
version = "0.1.0"
optional = true
[dependencies.axiolid-contracts]
version = "0.1.0"
optional = true
[dependencies.axiolid-core]
version = "0.1.0"
[dependencies.axiolid-curve]
version = "0.1.0"
optional = true
[dependencies.axiolid-dispatch]
version = "0.1.0"
optional = true
default-features = false
[dependencies.axiolid-field]
version = "0.1.0"
optional = true
[dependencies.axiolid-field-ops]
version = "0.1.0"
optional = true
default-features = false
[dependencies.axiolid-heal]
version = "0.1.0"
optional = true
[dependencies.axiolid-measure]
version = "0.1.0"
optional = true
[dependencies.axiolid-mesh]
version = "0.1.0"
optional = true
[dependencies.axiolid-mesh-boolean-contract]
version = "0.1.0"
optional = true
[dependencies.axiolid-mesh-compile-contract]
version = "0.1.0"
optional = true
[dependencies.axiolid-mesh-contracts]
version = "0.1.0"
optional = true
[dependencies.axiolid-mesh-section-contract]
version = "0.1.0"
optional = true
[dependencies.axiolid-model]
version = "0.1.0"
optional = true
[dependencies.axiolid-nurbs]
version = "0.1.0"
optional = true
[dependencies.axiolid-overlay]
version = "0.1.0"
optional = true
[dependencies.axiolid-primitive]
version = "0.1.0"
optional = true
[dependencies.axiolid-profile]
version = "0.1.0"
optional = true
[dependencies.axiolid-spatial]
version = "0.1.0"
optional = true
[dependencies.axiolid-surface]
version = "0.1.0"
optional = true
[dependencies.axiolid-tessellation-contract]
version = "0.1.0"
optional = true
[dependencies.axiolid-topology]
version = "0.1.0"
optional = true