ply_rs::ply

Struct Ply

Source
pub struct Ply<E: PropertyAccess> {
    pub header: Header,
    pub payload: Payload<E>,
}
Expand description

Models all necessary information to interact with a PLY file.

The generic parameter E is the element type used to store the payload data.

Fields§

§header: Header

All header information found in a PLY file.

§payload: Payload<E>

The payloud found after the end_header line in a PLY file.

One line in an ascii PLY file corresponds to a single element. The payload groups elments with the same type together in a vector.

§Examples

Assume you have a Ply object called ply and want to access the third point element:

// get ply from somewhere ...
let ref a_point = ply.payload["point"][2];
let ref a_point_x = ply.payload["point"][2]["x"];

Implementations§

Source§

impl<E: PropertyAccess> Ply<E>

Source

pub fn make_consistent(&mut self) -> Result<(), ConsistencyError>

Takes a mutable Ply object, performs common operations to make it consistent,

When written, a consistent Ply object generates a valid PLY file. This method also checks for invariants that can’t be fixed automatically. If something can not be fixed automatically, it returns a ConsistencyError describing the problem.

§Remarks

This method should always be called before writing to a file with Writer. Only exception is write_ply(), which, for convenience, performs the check itself. See write_ply_unchecked() for a variant that expects the client to assure consistency.

No checks on encoding are performed. For maximal compatability, only ascii characters should be used but this is not checked. Every relevant string is checked to not contain line breaks. Identifiers are also checked to not contain white spaces.

Source§

impl<E: PropertyAccess> Ply<E>

Source

pub fn new() -> Self

Creates a new Ply<E>.

Trait Implementations§

Source§

impl<E: Clone + PropertyAccess> Clone for Ply<E>

Source§

fn clone(&self) -> Ply<E>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<E: Debug + PropertyAccess> Debug for Ply<E>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<E: PartialEq + PropertyAccess> PartialEq for Ply<E>

Source§

fn eq(&self, other: &Ply<E>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<E: PropertyAccess> StructuralPartialEq for Ply<E>

Auto Trait Implementations§

§

impl<E> Freeze for Ply<E>

§

impl<E> RefUnwindSafe for Ply<E>
where E: RefUnwindSafe,

§

impl<E> Send for Ply<E>
where E: Send,

§

impl<E> Sync for Ply<E>
where E: Sync,

§

impl<E> Unpin for Ply<E>

§

impl<E> UnwindSafe for Ply<E>
where E: RefUnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.