pub struct VectorFieldGizmo {
pub grid_origin: Vec3,
pub grid_size: Vec3,
pub cell_count: [u32; 3],
pub arrow_scale: f32,
pub color_min: Vec4,
pub color_max: Vec4,
pub max_magnitude: f32,
pub visible: bool,
}Expand description
Samples a force field and draws vectors as arrows.
Fields§
§grid_origin: Vec3§grid_size: Vec3§cell_count: [u32; 3]§arrow_scale: f32§color_min: Vec4§color_max: Vec4§max_magnitude: f32§visible: boolImplementations§
Source§impl VectorFieldGizmo
impl VectorFieldGizmo
pub fn new(origin: Vec3, size: Vec3, cells: [u32; 3]) -> Self
Sourcepub fn sample_positions(&self) -> Vec<Vec3>
pub fn sample_positions(&self) -> Vec<Vec3>
Sample positions for the vector field grid.
Sourcepub fn make_arrow(&self, pos: Vec3, vector: Vec3) -> (Vec3, Vec3, Vec4)
pub fn make_arrow(&self, pos: Vec3, vector: Vec3) -> (Vec3, Vec3, Vec4)
Given a vector value at a position, produce an arrow (start, end, color).
Sourcepub fn arrows_for_samples(
&self,
samples: &[(Vec3, Vec3)],
) -> Vec<(Vec3, Vec3, Vec4)>
pub fn arrows_for_samples( &self, samples: &[(Vec3, Vec3)], ) -> Vec<(Vec3, Vec3, Vec4)>
Generate arrows for a set of (position, vector) samples.
Sourcepub fn color_for_magnitude(&self, magnitude: f32) -> Vec4
pub fn color_for_magnitude(&self, magnitude: f32) -> Vec4
Color interpolated by magnitude.
Trait Implementations§
Source§impl Clone for VectorFieldGizmo
impl Clone for VectorFieldGizmo
Source§fn clone(&self) -> VectorFieldGizmo
fn clone(&self) -> VectorFieldGizmo
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for VectorFieldGizmo
impl RefUnwindSafe for VectorFieldGizmo
impl Send for VectorFieldGizmo
impl Sync for VectorFieldGizmo
impl Unpin for VectorFieldGizmo
impl UnsafeUnpin for VectorFieldGizmo
impl UnwindSafe for VectorFieldGizmo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&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)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.