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