Struct collision::primitive::ConvexPolyhedron [] [src]

pub struct ConvexPolyhedron<S> where
    S: BaseFloat
{ /* fields omitted */ }

Convex polyhedron primitive.

Can contain any number of vertices, but a high number of vertices will affect performance of course. It is recommended for high vertex counts, to also provide the faces, this will cause the support function to use hill climbing on a half edge structure, resulting in better performance. The breakpoint is around 250 vertices, but the face version is only marginally slower on lower vertex counts (about 1-2%), while for higher vertex counts it's about 2-5 times faster.

Methods

impl<S> ConvexPolyhedron<S> where
    S: BaseFloat
[src]

[src]

Create a new convex polyhedron from the given vertices.

[src]

Create a new convex polyhedron from the given vertices and faces.

[src]

Create a new convex polyhedron from the given vertices and faces. Will remove any duplicate vertices.

[src]

Return an iterator that will yield tuples of the 3 vertices of each face

Trait Implementations

impl<S: Debug> Debug for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

[src]

Formats the value using the given formatter. Read more

impl<S: Clone> Clone for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl<S: PartialEq> PartialEq for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

[src]

This method tests for !=.

impl<S> Primitive for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

Point type

[src]

Get the support point on the shape in a given direction. Read more

impl<S> ComputeBound<Aabb3<S>> for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

[src]

Compute the bounding volume

impl<S> ComputeBound<Sphere<S>> for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

[src]

Compute the bounding volume

impl<S> Discrete<Ray3<S>> for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

TODO: better algorithm for finding faces to intersect with?

[src]

Ray must be in object space

impl<S> Continuous<Ray3<S>> for ConvexPolyhedron<S> where
    S: BaseFloat
[src]

Result returned by the intersection test

[src]

Ray must be in object space

impl<S> From<ConvexPolyhedron<S>> for Primitive3<S> where
    S: BaseFloat
[src]

[src]

Performs the conversion.

Auto Trait Implementations

impl<S> Send for ConvexPolyhedron<S> where
    S: Send

impl<S> Sync for ConvexPolyhedron<S> where
    S: Sync