pub trait WaveFrontCompatible<'a> {
type Scalar: Float + Debug + AddAssign + Display;
// Required methods
fn pos_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 3]>;
fn uv_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 2]>;
fn norm_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 3]>;
fn segment_iterator(&'a self) -> impl Iterator<Item = [usize; 2]>;
fn pos_index_iterator(
&'a self,
) -> impl Iterator<Item = impl Iterator<Item = usize>>;
fn uv_index_iterator(
&'a self,
) -> impl Iterator<Item = impl Iterator<Item = usize>>;
fn norm_index_iterator(
&'a self,
) -> impl Iterator<Item = impl Iterator<Item = usize>>;
}Expand description
Trait needed to export a mesh representation as an obj file (only geometry information). very useful for inspecting meshes.
Required Associated Types§
Required Methods§
Sourcefn pos_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 3]>
fn pos_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 3]>
A way to iterate over the vertex positions.
Sourcefn uv_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 2]>
fn uv_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 2]>
A way to iterate over the texture coordinates.
Sourcefn norm_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 3]>
fn norm_iterator(&'a self) -> impl Iterator<Item = [Self::Scalar; 3]>
A way to iterate over the norms.
Sourcefn segment_iterator(&'a self) -> impl Iterator<Item = [usize; 2]>
fn segment_iterator(&'a self) -> impl Iterator<Item = [usize; 2]>
A way to iterate over the lines/segments.
Sourcefn pos_index_iterator(
&'a self,
) -> impl Iterator<Item = impl Iterator<Item = usize>>
fn pos_index_iterator( &'a self, ) -> impl Iterator<Item = impl Iterator<Item = usize>>
A way to iterate over the vertex topology.
Sourcefn uv_index_iterator(
&'a self,
) -> impl Iterator<Item = impl Iterator<Item = usize>>
fn uv_index_iterator( &'a self, ) -> impl Iterator<Item = impl Iterator<Item = usize>>
A way to iterate over the uv topology.
Sourcefn norm_index_iterator(
&'a self,
) -> impl Iterator<Item = impl Iterator<Item = usize>>
fn norm_index_iterator( &'a self, ) -> impl Iterator<Item = impl Iterator<Item = usize>>
A way to iterate over the normal topology.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".