1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
//! Fornjot modeling library
//!
//! The purpose of this library is to support Fornjot models, which are just
//! Rust libraries. Models depend on this library and use the primitives defined
//! here to define a CAD model.
//!
//! To actually display the CAD model, or export it to another file format, you
//! need the host application. Please refer to the [Fornjot repository] for
//! usage examples.
//!
//! [Fornjot repository]: https://github.com/hannobraun/Fornjot
mod shape_2d;
mod shape_3d;
mod syntax;
pub mod prelude {
pub use crate::syntax::{
Difference as _, Rotate as _, Sketch as _, Sweep as _, Translate as _,
Union as _,
};
}
pub use self::{shape_2d::*, shape_3d::*};
/// A shape
#[derive(Clone, Debug)]
#[repr(C)]
pub enum Shape {
Shape2d(Shape2d),
Shape3d(Shape3d),
}