Struct ncollide2df64::geom::Convex
pub struct Convex { // some fields omitted }
Set of point assumed to form a convex polytope.
Methods
impl Convex
fn new(pts: ~[V]) -> Convex
Creates a polytope from a set of point. Those points are assumed to form a convex polytope: convexity is not checked.
fn new_with_margin(pts: ~[V], margin: N) -> Convex
Creates a polytope from a set of point and a custom margin. Those points are assumed to form a convex polytope: convexity is not checked.
impl Convex
fn pts<'a>(&'a self) -> &'a [V]
The list of points of this convex polytope.
fn margin(&self) -> N
The margin surrounding this convex polytope.
Trait Implementations
impl HasAABB for Convex
impl Clone for Convex
Automatically derived.
fn clone(&self) -> Convex
impl RayCast for Convex
fn toi_and_normal_with_ray(&self, ray: &Ray) -> Option<(N, V)>
Computes the intersection point between this geometry and a ray.
fn toi_with_ray(&self, ray: &Ray) -> Option<N>
Computes the time of impact between this geometry and a ray
fn intersects_ray(&self, ray: &Ray) -> bool
Tests whether a ray intersects this geometry.
fn toi_with_transform_and_ray(&self, m: &M, ray: &Ray) -> Option<N>
Computes the time of impact between this transform geometry and a ray.
fn toi_and_normal_with_transform_and_ray(&self, m: &M, ray: &Ray) -> Option<(N, V)>
Computes the time of impact, and normal between this transformed geometry and a ray.
fn intersects_with_transform_and_ray(&self, m: &M, ray: &Ray) -> bool
Tests whether a ray intersects this transformed geometry.
impl Volumetric for Convex
fn mass_properties(&self, _: &N) -> (N, V, II)
Given a density, this computes the mass, center of mass, and inertia tensor of this object.
impl HasMargin for Convex
fn margin(&self) -> N
The geometry margin.
impl<_M: Transform<V> + Rotate<V>> Implicit<V, _M> for Convex
fn support_point_without_margin(&self, m: &_M, dir: &V) -> V
Evaluates the support function of the object. A support function is a
function associating a vector to the geometry point which maximizes their
dot product. This does not include the margin
of the object. Margins are
geometry-dependent. Use support_point
to sample the complete geometry.
Arguments:
dir
- the input of the support function. It is not required for it to be normalized.
fn support_point(&self, transform: &M, dir: &V) -> V
Evaluates the support function of the object. A support function is a function associating a vector to the geometry point which maximizes their dot product.
Arguments:
dir
- the input of the support function. It is not required for it to be normalized.
impl<_M> PreferedSamplingDirections<V, _M> for Convex
fn sample(&self, _: &_M, _: |V|)
Applies a function to this geometry with a given transform.