pub struct InteractionGraph<N: RealField + Copy, Handle: CollisionObjectHandle>(_);
Expand description

A graph where nodes are collision objects and edges are contact or proximity algorithms.

Implementations

Creates a new empty collection of collision objects.

Adds a handle to this graph.

Removes a handle from this graph and returns a handle that must have its graph index changed to id.

When a node is removed, another node of the graph takes it place. This means that the CollisionObjectGraphIndex of the collision object returned by this method will be equal to id. Thus if you maintain a map between CollisionObjectSlabHandle and CollisionObjectGraphIndex, then you should update this map to associate id to the handle returned by this method. For example:

// Let `id` be the graph index of the collision object we want to remove.
if let Some(other_handle) = graph.remove_node(id) {
   // The graph index of `other_handle` changed to `id` due to the removal.
   map.insert(other_handle, id) ;
}

All the interactions pairs on this graph.

Refer to the official user guide for details.

All the contact pairs on this graph.

Refer to the official user guide for details.

All the proximity pairs on this graph.

Refer to the official user guide for details.

The interaction between the two collision objects identified by their graph index.

Refer to the official user guide for details.

The interaction between the two collision objects identified by their graph index.

Refer to the official user guide for details.

The contact pair between the two collision objects identified by their graph index.

Refer to the official user guide for details.

The proximity pair between the two collision objects identified by their graph index.

Refer to the official user guide for details.

The proximity pair between the two collision objects identified by their graph index.

Refer to the official user guide for details.

All the interaction involving the collision object with graph index id.

Refer to the official user guide for details.

Gets the interaction with the given index.

All the mutable references to interactions involving the collision object with graph index id.

Refer to the official user guide for details.

All the proximity pairs involving the collision object with graph index id.

Refer to the official user guide for details.

All the contact pairs involving the collision object with graph index id.

Refer to the official user guide for details.

All the collision object handles of collision objects interacting with the collision object with graph index id.

Refer to the official user guide for details.

All the collision object handles of collision objects in contact with the collision object with graph index id.

Refer to the official user guide for details.

All the collision object handles of collision objects in proximity of with the collision object with graph index id.

Refer to the official user guide for details.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Casts the value.

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Casts the value.

Casts the value.

Casts the value.

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Performs the conversion.

Performs the conversion.

Casts the value.

OverflowingCasts the value.

Should always be Self

Casts the value.

Casts the value.

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

Checks if self is actually part of its subset T (and can be converted to it).

Use with care! Same as self.to_subset but without any property checks. Always succeeds.

The inclusion map: converts self to the equivalent element of its superset.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Casts the value.

UnwrappedCasts the value.

Casts the value.

WrappingCasts the value.