Trait VoxelSliceExt
pub trait VoxelSliceExt {
// Required methods
fn maximum_voxel(&self) -> Result<&Voxel, Error>;
fn minimum_voxel(&self) -> Result<&Voxel, Error>;
fn maximum_result_error(&self) -> Result<(f64, f64), Error>;
fn minimum_result_error(&self) -> Result<(f64, f64), Error>;
fn average_result_error(&self) -> Result<(f64, f64), Error>;
fn collect_result_error(&self) -> Vec<(f64, f64)>;
}
Expand description
Extension trait for slices of voxels
Required Methods§
fn maximum_voxel(&self) -> Result<&Voxel, Error>
fn maximum_voxel(&self) -> Result<&Voxel, Error>
Find the maximum Voxel
For example:
use ntools_mesh::{Voxel, VoxelSliceExt};
let voxels = vec![
Voxel{result: 1.0, ..Default::default()},
Voxel{result: 2.0, ..Default::default()},
Voxel{result: 3.0, ..Default::default()},
];
assert_eq!(voxels.maximum_voxel().unwrap(), &voxels[2]);
fn minimum_voxel(&self) -> Result<&Voxel, Error>
fn minimum_voxel(&self) -> Result<&Voxel, Error>
Find the minimum Voxel
For example:
use ntools_mesh::{Voxel, VoxelSliceExt};
let voxels = vec![
Voxel{result: 1.0, ..Default::default()},
Voxel{result: 2.0, ..Default::default()},
Voxel{result: 3.0, ..Default::default()},
];
assert_eq!(voxels.minimum_voxel().unwrap(), &voxels[0]);
fn maximum_result_error(&self) -> Result<(f64, f64), Error>
fn maximum_result_error(&self) -> Result<(f64, f64), Error>
Find the maximum (value
, error
) in a Voxel collection
For example:
use ntools_mesh::{Voxel, VoxelSliceExt};
let voxels = vec![
Voxel{result: 1.0, ..Default::default()},
Voxel{result: 2.0, ..Default::default()},
Voxel{result: 3.0, ..Default::default()},
];
assert_eq!(voxels.maximum_result_error().unwrap(), (3.0, 0.0));
fn minimum_result_error(&self) -> Result<(f64, f64), Error>
fn minimum_result_error(&self) -> Result<(f64, f64), Error>
Find the minimum (value
, error
) in a Voxel collection
For example:
use ntools_mesh::{Voxel, VoxelSliceExt};
let voxels = vec![
Voxel{result: 1.0, ..Default::default()},
Voxel{result: 2.0, ..Default::default()},
Voxel{result: 3.0, ..Default::default()},
];
assert_eq!(voxels.minimum_result_error().unwrap(), (1.0, 0.0));
fn average_result_error(&self) -> Result<(f64, f64), Error>
fn average_result_error(&self) -> Result<(f64, f64), Error>
Find the average (value
, error
) in a Voxel collection
For example:
use ntools_mesh::{Voxel, VoxelSliceExt};
let voxels = vec![
Voxel{result: 1.0, error: 0.1, ..Default::default()},
Voxel{result: 2.0, error: 0.1, ..Default::default()},
Voxel{result: 3.0, error: 0.1, ..Default::default()},
];
assert_eq!(voxels.average_result_error().unwrap(), (2.0, 0.18708286933869708));
fn collect_result_error(&self) -> Vec<(f64, f64)>
fn collect_result_error(&self) -> Vec<(f64, f64)>
Collect (value
, error
) pairs from a Voxel collection
For example:
use ntools_mesh::{Voxel, VoxelSliceExt};
let voxels = vec![
Voxel{result: 1.0, ..Default::default()},
Voxel{result: 2.0, ..Default::default()},
Voxel{result: 3.0, ..Default::default()},
];
assert_eq!(voxels.collect_result_error(), vec![(1.0, 0.0), (2.0, 0.0), (3.0, 0.0)]);