Trait autd3_driver::geometry::Transducer
source · pub trait Transducer: Send + Sync {
Show 21 methods
// Required methods
fn new(local_idx: usize, pos: Vector3, rot: UnitQuaternion) -> Self;
fn translate_to(&mut self, pos: Vector3);
fn rotate_to(&mut self, rot: UnitQuaternion);
fn affine(&mut self, pos: Vector3, rot: UnitQuaternion);
fn position(&self) -> &Vector3;
fn rotation(&self) -> &UnitQuaternion;
fn local_idx(&self) -> usize;
fn frequency(&self) -> f64;
fn mod_delay(&self) -> u16;
fn set_mod_delay(&mut self, value: u16);
fn amp_filter(&self) -> f64;
fn set_amp_filter(&mut self, value: f64);
fn phase_filter(&self) -> f64;
fn set_phase_filter(&mut self, value: f64);
fn cycle(&self) -> u16;
// Provided methods
fn align_phase_at(&self, pos: Vector3, sound_speed: f64) -> f64 { ... }
fn x_direction(&self) -> Vector3 { ... }
fn y_direction(&self) -> Vector3 { ... }
fn z_direction(&self) -> Vector3 { ... }
fn wavelength(&self, sound_speed: f64) -> f64 { ... }
fn wavenumber(&self, sound_speed: f64) -> f64 { ... }
}
Required Methods§
sourcefn new(local_idx: usize, pos: Vector3, rot: UnitQuaternion) -> Self
fn new(local_idx: usize, pos: Vector3, rot: UnitQuaternion) -> Self
Create transducer
fn translate_to(&mut self, pos: Vector3)
fn rotate_to(&mut self, rot: UnitQuaternion)
sourcefn affine(&mut self, pos: Vector3, rot: UnitQuaternion)
fn affine(&mut self, pos: Vector3, rot: UnitQuaternion)
Affine transformation
sourcefn rotation(&self) -> &UnitQuaternion
fn rotation(&self) -> &UnitQuaternion
Get the rotation of the transducer
sourcefn set_mod_delay(&mut self, value: u16)
fn set_mod_delay(&mut self, value: u16)
Set the modulation delay of the transducer
sourcefn amp_filter(&self) -> f64
fn amp_filter(&self) -> f64
Get the amp filter
sourcefn set_amp_filter(&mut self, value: f64)
fn set_amp_filter(&mut self, value: f64)
Set the amp filter
sourcefn phase_filter(&self) -> f64
fn phase_filter(&self) -> f64
Get the phase filter
sourcefn set_phase_filter(&mut self, value: f64)
fn set_phase_filter(&mut self, value: f64)
Set the phase filter
Provided Methods§
sourcefn align_phase_at(&self, pos: Vector3, sound_speed: f64) -> f64
fn align_phase_at(&self, pos: Vector3, sound_speed: f64) -> f64
Calculate the phase of the transducer to align the phase at the specified position
sourcefn x_direction(&self) -> Vector3
fn x_direction(&self) -> Vector3
Get the x-direction of the transducer
sourcefn y_direction(&self) -> Vector3
fn y_direction(&self) -> Vector3
Get the y-direction of the transducer
sourcefn z_direction(&self) -> Vector3
fn z_direction(&self) -> Vector3
Get the z-direction (axial direction) of the transducer
sourcefn wavelength(&self, sound_speed: f64) -> f64
fn wavelength(&self, sound_speed: f64) -> f64
Get the wavelength of the transducer
sourcefn wavenumber(&self, sound_speed: f64) -> f64
fn wavenumber(&self, sound_speed: f64) -> f64
Get the wavenumber of the transducer
Object Safety§
This trait is not object safe.