[src]

Struct ncollide2df64::geom::Cone

pub struct Cone {
    // some fields omitted
}

Implicit description of a cylinder geometry with its principal axis aligned with the x axis.

Methods

impl Cone

fn new(half_height: N, radius: N) -> Cone

Creates a new cone.

Arguments:

  • half_height - the half length of the cone along the x axis.
  • radius - the length of the cone along all other axis.

fn new_with_margin(half_height: N, radius: N, margin: N) -> Cone

Creates a new cone with a custom margin.

Arguments:

  • half_height - the half length of the cone along the x axis.
  • radius - the length of the cone along all other axis.
  • margin - the cone margin.

impl Cone

fn half_height(&self) -> N

The cone half length along the x axis.

fn radius(&self) -> N

The radius of the cone along all but the x axis.

fn margin(&self) -> N

The margin around the cone.

Trait Implementations

impl HasAABB for Cone

fn aabb(&self, m: &M) -> AABB

The object’s AABB.

impl Eq for Cone

Automatically derived.

fn eq(&self, __arg_0: &Cone) -> bool

fn ne(&self, __arg_0: &Cone) -> bool

impl ToStr for Cone

Automatically derived.

fn to_str(&self) -> ~str

impl Clone for Cone

Automatically derived.

fn clone(&self) -> Cone

impl<__E: Encoder> Encodable<__E> for Cone

Automatically derived.

fn encode(&self, __arg_0: &mut __E)

impl<__D: Decoder> Decodable<__D> for Cone

Automatically derived.

fn decode(__arg_0: &mut __D) -> Cone

impl RayCast for Cone

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 Cone

fn mass_properties(&self, density: &N) -> (N, V, II)

Given a density, this computes the mass, center of mass, and inertia tensor of this object.

impl HasMargin for Cone

fn margin(&self) -> N

The geometry margin.

impl<_M: Transform<V> + Rotate<V>> Implicit<V, _M> for Cone

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: Rotate<V>> PreferedSamplingDirections<V, _M> for Cone

fn sample(&self, transform: &_M, f: |V|)

Applies a function to this geometry with a given transform.