bevy_tnua::radar_lens

Struct TnuaRadarBlipLens

Source
pub struct TnuaRadarBlipLens<'a, X: TnuaSpatialExt> {
    pub collider_data: X::ColliderData<'a>,
    /* private fields */
}

Fields§

§collider_data: X::ColliderData<'a>

Implementations§

Source§

impl<X: TnuaSpatialExt> TnuaRadarBlipLens<'_, X>

Source

pub fn entity(&self) -> Entity

Source

pub fn is_interactable(&self) -> bool

Source

pub fn closest_point(&self) -> TnuaPointProjectionResult

Source

pub fn closest_point_from( &self, point: Vector3, solid: bool, ) -> TnuaPointProjectionResult

Source

pub fn closest_point_from_offset( &self, offset: Vector3, solid: bool, ) -> TnuaPointProjectionResult

Source

pub fn flat_wall_score(&self, up: Dir3, offsets: &[Float]) -> Float

Source

pub fn probe_extent_from_closest_point( &self, direction: Dir3, probe_at_distance: Float, ) -> Float

Try traversing the geometry from the closest_point along direction until reaching probe_at_distance.

If the geometry reaches that distance (and behind), that distance will be returned.

If the geometry does not reach the desired distance, and it ends in a right angle or acute angle, the distance to that point will be returned.

If the geometry does not reach the desired distance, and it “ends” in an obtuse angle, the returned value will be between that point and probe_at_distance.

This is useful to detect when the character is near the top of a wall or of a climbable object.

Maybe have weird results if used on concave colliders, and the distance may not be accurate in genral, so always use a threshold

Source

pub fn direction_to_closest_point(&self) -> Result<Dir3, InvalidDirectionError>

Source

pub fn normal_from_closest_point(&self) -> Vector3

Source

pub fn spatial_relation(&self, threshold: Float) -> TnuaBlipSpatialRelation

Auto Trait Implementations§

§

impl<'a, X> !Freeze for TnuaRadarBlipLens<'a, X>

§

impl<'a, X> !RefUnwindSafe for TnuaRadarBlipLens<'a, X>

§

impl<'a, X> Send for TnuaRadarBlipLens<'a, X>
where <X as TnuaSpatialExt>::ColliderData<'a>: Send, X: Sync,

§

impl<'a, X> !Sync for TnuaRadarBlipLens<'a, X>

§

impl<'a, X> Unpin for TnuaRadarBlipLens<'a, X>
where <X as TnuaSpatialExt>::ColliderData<'a>: Unpin,

§

impl<'a, X> UnwindSafe for TnuaRadarBlipLens<'a, X>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T, U> AsBindGroupShaderType<U> for T
where U: ShaderType, &'a T: for<'a> Into<U>,

Source§

fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U

Return the T ShaderType for self. When used in AsBindGroup derives, it is safe to assume that all images in self exist.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Converts Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Converts Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Converts &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Converts &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSend for T
where T: Any + Send,

Source§

fn into_any_send(self: Box<T>) -> Box<dyn Any + Send>

Converts Box<Trait> (where Trait: DowncastSend) to Box<dyn Any + Send>, which can then be downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ConditionalSend for T
where T: Send,

Source§

impl<T> WasmNotSend for T
where T: Send,