1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
use super::ToTriMesh; use crate::procedural; use crate::procedural::TriMesh; use crate::shape::Cylinder; use alga::general::RealField; use na; impl<N: RealField> ToTriMesh<N> for Cylinder<N> { type DiscretizationParameter = u32; fn to_trimesh(&self, nsubdiv: u32) -> TriMesh<N> { let diameter = self.radius() * na::convert(2.0f64); let height = self.half_height() * na::convert(2.0f64); procedural::cylinder(diameter, height, nsubdiv) } }