[][src]Module broccoli::query

Module contains query related structs.

Structs

KResult

Returned by knearest.

KnearestResult

Returned by k_nearest_mut

MultiRectMut

See the Queries::multi_rect function.

NotSortedQueryBuilder

Builder for a query on a NotSorted Dinotree.

QueryBuilder

Builder for a query on a DinoTree.

RectIntersectErr

Indicates that the user supplied a rectangle that intersects with a another one previously queries in the session.

Traits

ColMulti

Used for the advanced algorithms. Trait that user implements to handling aabb collisions. The user supplies a struct that implements this trait instead of just a closure so that the user may also have the struct implement Splitter.

DividerDrawer

Trait user must implement.

Knearest

The geometric functions that the user must provide.

NodeMassTrait

User trait to fill out which is then passed to the nbody query function.

NotSortedQueries

Queries that can be performed on a tree that is not sorted These functions are not documented since they match the same behavior as those in the Queries trait.

Queries

Query functions. User defines vistr() functions, and the query functions are automatically provided by this trait.

RayCast

A Vec is returned since there coule be ties where the ray hits multiple T at a length N away. This is the trait that defines raycast specific geometric functions that are needed by this raytracing algorithm. By containing all these functions in this trait, we can keep the trait bounds of the underlying Num to a minimum of only needing Ord.

Functions

find_collisions_sweep_mut

For comparison, the sweep and prune algorithm