pub trait GeoSet: Sized + Clone {
Show 18 methods
// Required methods
fn dim(&self) -> usize;
fn empty(&self) -> Result<bool, SetOperationError>;
fn degenerate(&self) -> bool;
fn from_unit_box(dim: usize) -> Self;
fn to_vertices(&self) -> Result<Array2<f64>, SetOperationError>;
fn center(&self) -> Result<Array1<f64>, SetOperationError>;
fn support_function(
&self,
direction: Array1<f64>,
) -> Result<(Array1<f64>, f64), SetOperationError>;
fn volume(&self) -> Result<f64, SetOperationError>;
fn contains_point(
&self,
point: &Array1<f64>,
) -> Result<bool, SetOperationError>;
fn minkowski_sum_(&mut self, other: &Self) -> Result<(), SetOperationError>;
fn matmul_(&mut self, mat: &Array2<f64>) -> Result<(), SetOperationError>;
fn translate_(
&mut self,
vector: &Array1<f64>,
) -> Result<(), SetOperationError>;
// Provided methods
fn minkowski_sum(&self, other: &Self) -> Result<Self, SetOperationError> { ... }
fn matmul(&self, mat: &Array2<f64>) -> Result<Self, SetOperationError> { ... }
fn translate(&self, vector: &Array1<f64>) -> Result<Self, SetOperationError> { ... }
fn create_trace(
&self,
dim: (usize, usize),
name: Option<&str>,
) -> Result<Box<dyn Trace>, SetOperationError> { ... }
fn plot(
&self,
dim: (usize, usize),
equal_axis: bool,
show: bool,
) -> Result<Plot, SetOperationError> { ... }
fn _check_operand_dim(&self, dim: usize) -> Result<(), SetOperationError> { ... }
}
Required Methods§
fn dim(&self) -> usize
fn empty(&self) -> Result<bool, SetOperationError>
fn degenerate(&self) -> bool
fn from_unit_box(dim: usize) -> Self
fn to_vertices(&self) -> Result<Array2<f64>, SetOperationError>
fn center(&self) -> Result<Array1<f64>, SetOperationError>
fn support_function( &self, direction: Array1<f64>, ) -> Result<(Array1<f64>, f64), SetOperationError>
fn volume(&self) -> Result<f64, SetOperationError>
fn contains_point(&self, point: &Array1<f64>) -> Result<bool, SetOperationError>
fn minkowski_sum_(&mut self, other: &Self) -> Result<(), SetOperationError>
fn matmul_(&mut self, mat: &Array2<f64>) -> Result<(), SetOperationError>
fn translate_(&mut self, vector: &Array1<f64>) -> Result<(), SetOperationError>
Provided Methods§
fn minkowski_sum(&self, other: &Self) -> Result<Self, SetOperationError>
fn matmul(&self, mat: &Array2<f64>) -> Result<Self, SetOperationError>
fn translate(&self, vector: &Array1<f64>) -> Result<Self, SetOperationError>
fn create_trace( &self, dim: (usize, usize), name: Option<&str>, ) -> Result<Box<dyn Trace>, SetOperationError>
fn plot( &self, dim: (usize, usize), equal_axis: bool, show: bool, ) -> Result<Plot, SetOperationError>
fn _check_operand_dim(&self, dim: usize) -> Result<(), SetOperationError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.