[−][src]Struct salva2d::LiquidWorld
The physics world for simulating fluids with boundaries.
Fields
counters: Counters
Performance counters of the whole fluid simulation engine.
Methods
impl<N: RealField> LiquidWorld<N>
[src]
pub fn new(
solver: impl PressureSolver<N> + 'static,
particle_radius: N,
smoothing_factor: N
) -> Self
[src]
solver: impl PressureSolver<N> + 'static,
particle_radius: N,
smoothing_factor: N
) -> Self
Initialize a new liquid world.
Parameters
particle_radius
: the radius of every particle on this world.smoothing_factor
: the smoothing factor used to compute the SPH kernel radius. The kernel radius will be computed as `particle_radius * smoothing_factor * 2.0.
pub fn step(&mut self, dt: N, gravity: &Vector<N>)
[src]
Advances the simulation by dt
milliseconds.
All the fluid particles will be affected by an acceleration equal to gravity
.
pub fn step_with_coupling(
&mut self,
dt: N,
gravity: &Vector<N>,
coupling: &mut impl CouplingManager<N>
)
[src]
&mut self,
dt: N,
gravity: &Vector<N>,
coupling: &mut impl CouplingManager<N>
)
Advances the simulation by dt
milliseconds, taking into account coupling with an external rigid-body engine.
pub fn add_fluid(&mut self, fluid: Fluid<N>) -> FluidHandle
[src]
Add a fluid to the liquid world.
pub fn add_boundary(&mut self, boundary: Boundary<N>) -> BoundaryHandle
[src]
Add a boundary to the liquid world.
pub fn remove_fluid(&mut self, handle: FluidHandle) -> Option<Fluid<N>>
[src]
Add a fluid to the liquid world.
pub fn remove_boundary(&mut self, handle: BoundaryHandle) -> Option<Boundary<N>>
[src]
Add a boundary to the liquid world.
pub fn fluids(&self) -> &FluidSet<N>
[src]
The set of fluids on this liquid world.
pub fn fluids_mut(&mut self) -> &mut FluidSet<N>
[src]
The mutable set of fluids on this liquid world.
pub fn boundaries(&self) -> &BoundarySet<N>
[src]
The set of boundaries on this liquid world.
pub fn boundaries_mut(&mut self) -> &mut BoundarySet<N>
[src]
The mutable set of boundaries on this liquid world.
pub fn h(&self) -> N
[src]
The SPH kernel radius.
pub fn particle_radius(&self) -> N
[src]
The radius of every particle on this liquid world.
Auto Trait Implementations
impl<N> !RefUnwindSafe for LiquidWorld<N>
impl<N> !Send for LiquidWorld<N>
impl<N> !Sync for LiquidWorld<N>
impl<N> Unpin for LiquidWorld<N> where
N: Scalar + Unpin,
N: Scalar + Unpin,
impl<N> !UnwindSafe for LiquidWorld<N>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn is_in_subset(&self) -> bool
fn to_subset_unchecked(&self) -> SS
fn from_subset(element: &SS) -> SP
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,