pub struct SingleVariableFunctionMesh {
pub f1: fn(f32) -> f32,
pub f1_x_start: f32,
pub f1_x_end: f32,
pub f1_vertices: usize,
pub f2: fn(f32) -> f32,
pub f2_x_start: f32,
pub f2_x_end: f32,
pub f2_vertices: usize,
}Expand description
A 2D or 3D mesh (bevy::render::mesh::Mesh) generated from a single-variable function
f(f32) -> f32.
Fields§
§f1: fn(f32) -> f32The function to be used as the upper half of the generated polygon. The function will be mirrored to the x-axis to generate the lower half of the polygon. If the mesh is 3D, the function will also be applied to the side vertices. Default = squircle.
f1_x_start: f32f1 starts here. Together with x_end, this determines the size of the mesh.
Must be lower than x_end. Default = -1.0.
f1_x_end: f32f1 ends here. Together with x_start, this determines the size of the mesh.
Must be bigger than x_start. Default = 1.0.
f1_vertices: usizeThe amount of vertices that are used for each upper half of the polygon. Should be at least 3. There will be (n - 2) * (2 * n - 2) + 2 vertices in total if 3D. Default = 30.0.
f2: fn(f32) -> f32§f2_x_start: f32§f2_x_end: f32§f2_vertices: usizeTrait Implementations§
Source§impl Clone for SingleVariableFunctionMesh
impl Clone for SingleVariableFunctionMesh
Source§fn clone(&self) -> SingleVariableFunctionMesh
fn clone(&self) -> SingleVariableFunctionMesh
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SingleVariableFunctionMesh
impl Debug for SingleVariableFunctionMesh
Source§impl Default for SingleVariableFunctionMesh
impl Default for SingleVariableFunctionMesh
Source§impl From<SingleVariableFunctionMesh> for Mesh
impl From<SingleVariableFunctionMesh> for Mesh
Source§fn from(mathfunction: SingleVariableFunctionMesh) -> Self
fn from(mathfunction: SingleVariableFunctionMesh) -> Self
impl Copy for SingleVariableFunctionMesh
Auto Trait Implementations§
impl Freeze for SingleVariableFunctionMesh
impl RefUnwindSafe for SingleVariableFunctionMesh
impl Send for SingleVariableFunctionMesh
impl Sync for SingleVariableFunctionMesh
impl Unpin for SingleVariableFunctionMesh
impl UnwindSafe for SingleVariableFunctionMesh
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T ShaderType for self. When used in AsBindGroup
derives, it is safe to assume that all images in self exist.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
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>
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>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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)
fn as_any(&self) -> &(dyn Any + 'static)
&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)
&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> 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>
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>
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)
&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)
&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
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self using default().
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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