use crate::math::SpatialInertia;
#[derive(Debug, Clone)]
pub struct Body {
pub name: String,
pub inertia: SpatialInertia,
pub parent: i32,
pub joint_idx: usize,
pub geometry: Option<Geometry>,
}
#[derive(Debug, Clone)]
pub enum Geometry {
Sphere {
radius: f64,
},
Capsule {
radius: f64,
length: f64,
},
Box {
half_extents: crate::math::Vec3,
},
Cylinder {
radius: f64,
height: f64,
},
Mesh {
vertices: Vec<crate::math::Vec3>,
faces: Vec<[usize; 3]>,
},
Plane {
normal: crate::math::Vec3,
},
}