truck_geometry/
lib.rs

1//! Geometrical structs: knot vector, B-spline and NURBS
2
3#![cfg_attr(not(debug_assertions), deny(warnings))]
4#![deny(clippy::all, rust_2018_idioms)]
5#![warn(
6    missing_docs,
7    missing_debug_implementations,
8    trivial_casts,
9    trivial_numeric_casts,
10    unsafe_code,
11    unstable_features,
12    unused_import_braces,
13    unused_qualifications
14)]
15
16use serde::{Deserialize, Serialize};
17use std::{fmt::Debug, ops::Bound};
18use truck_base::bounding_box::Bounded;
19
20const INCLUDE_CURVE_TRIALS: usize = 100;
21const PRESEARCH_DIVISION: usize = 50;
22
23/// re-export `truck_base`
24pub mod base {
25    pub use truck_base::bounding_box::BoundingBox;
26    pub use truck_base::cgmath64::*;
27    pub use truck_base::tolerance::*;
28    pub use truck_base::{assert_near, assert_near2};
29    pub use truck_base::{hash, hash::HashGen};
30    pub use truck_geotrait::*;
31}
32/// Declares the nurbs
33pub mod nurbs;
34
35/// Enumerats `Error`.
36pub mod errors;
37
38/// Declares the specified gememetric items: Plane, Sphere, and so on.
39pub mod specifieds;
40
41/// Declares some decorators
42pub mod decorators;
43
44/// re-export all modules.
45pub mod prelude {
46    use crate::*;
47    pub use base::*;
48    pub use decorators::*;
49    pub use errors::*;
50    pub use nurbs::*;
51    pub use specifieds::*;
52}