pub trait Plottable: Clone {
Show 17 methods
// Required methods
fn get_points(&self, _: &SampleSettings) -> Vec<V2>;
fn get_points_from(
&self,
current_drawing_head_pos: &V2,
sample_settings: &SampleSettings,
) -> Vec<V2>;
fn length(&self) -> f32;
fn is_closed(&self) -> bool;
fn contains_point(&self, point: &V2) -> bool;
fn simplify(&self, aggression_factor: f32) -> Self;
// Provided methods
fn get_line_segments(&self, sample_settings: &SampleSettings) -> Vec<Line> { ... }
fn get_points_oversampled(
&self,
sample_settings: &SampleSettings,
) -> Vec<V2> { ... }
fn get_points_and_dist_oversampled(
&self,
sample_settings: &SampleSettings,
) -> Vec<(V2, f32)> { ... }
fn as_geo_polygon(&self, sample_settings: &SampleSettings) -> Polygon<f32> { ... }
fn as_geo_line_string(
&self,
sample_settings: &SampleSettings,
) -> LineString<f32> { ... }
fn as_geo_multi_line_string(
&self,
sample_settings: &SampleSettings,
) -> MultiLineString<f32> { ... }
fn mask_geo(&self, mask: &Shape, sample_settings: &SampleSettings) -> Masked { ... }
fn mask_geo_inside(
&self,
mask: &Shape,
sample_settings: &SampleSettings,
) -> Layer { ... }
fn mask_geo_outside(
&self,
mask: &Shape,
sample_settings: &SampleSettings,
) -> Layer { ... }
fn mask_brute_force(
&self,
mask: &Shape,
sample_settings: &SampleSettings,
) -> Masked { ... }
fn mask_by_intersections(
&self,
mask: &Shape,
sample_settings: &SampleSettings,
) -> Masked { ... }
}Required Methods§
fn get_points(&self, _: &SampleSettings) -> Vec<V2>
fn get_points_from( &self, current_drawing_head_pos: &V2, sample_settings: &SampleSettings, ) -> Vec<V2>
fn length(&self) -> f32
fn is_closed(&self) -> bool
fn contains_point(&self, point: &V2) -> bool
fn simplify(&self, aggression_factor: f32) -> Self
Provided Methods§
fn get_line_segments(&self, sample_settings: &SampleSettings) -> Vec<Line>
fn get_points_oversampled(&self, sample_settings: &SampleSettings) -> Vec<V2>
fn get_points_and_dist_oversampled( &self, sample_settings: &SampleSettings, ) -> Vec<(V2, f32)>
fn as_geo_polygon(&self, sample_settings: &SampleSettings) -> Polygon<f32>
fn as_geo_line_string( &self, sample_settings: &SampleSettings, ) -> LineString<f32>
fn as_geo_multi_line_string( &self, sample_settings: &SampleSettings, ) -> MultiLineString<f32>
fn mask_geo(&self, mask: &Shape, sample_settings: &SampleSettings) -> Masked
fn mask_geo_inside( &self, mask: &Shape, sample_settings: &SampleSettings, ) -> Layer
fn mask_geo_outside( &self, mask: &Shape, sample_settings: &SampleSettings, ) -> Layer
fn mask_brute_force( &self, mask: &Shape, sample_settings: &SampleSettings, ) -> Masked
fn mask_by_intersections( &self, mask: &Shape, sample_settings: &SampleSettings, ) -> Masked
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.