Struct Segment

Source
pub(crate) struct Segment {
Show 15 fields pub flags: u8, pub dir: Direction, pub pos: i16, pub delta: i16, pub min_coord: i16, pub max_coord: i16, pub height: i16, pub score: i32, pub len: i32, pub link_ix: Option<u16>, pub serif_ix: Option<u16>, pub first_ix: u16, pub last_ix: u16, pub edge_ix: Option<u16>, pub edge_next_ix: Option<u16>,
}
Expand description

Fields§

§flags: u8

Flags describing the properties of the segment.

§dir: Direction

Dominant direction of the segment.

§pos: i16

Position of the segment.

§delta: i16

Deviation from segment position.

§min_coord: i16

Minimum coordinate of the segment.

§max_coord: i16

Maximum coordinate of the segment.

§height: i16

Hinted segment height.

§score: i32

Used during stem matching.

§len: i32

Used during stem matching.

§link_ix: Option<u16>

Index of best candidate for a stem link.

§serif_ix: Option<u16>

Index of best candidate for a serif link.

§first_ix: u16

Index of first point in the outline.

§last_ix: u16

Index of last point in the outline.

§edge_ix: Option<u16>

Index of edge that is associated with the segment.

§edge_next_ix: Option<u16>

Index of next segment in edge’s segment list.

Implementations§

Source§

impl Segment

Segment flags.

Source

pub const NORMAL: u8 = 0u8

Source

pub const ROUND: u8 = 1u8

Source

pub const SERIF: u8 = 2u8

Source

pub const DONE: u8 = 4u8

Source

pub const NEUTRAL: u8 = 8u8

Source§

impl Segment

Source

pub fn first(&self) -> usize

Source

pub fn first_point<'a>(&self, points: &'a [Point]) -> &'a Point

Source

pub fn last(&self) -> usize

Source

pub fn last_point<'a>(&self, points: &'a [Point]) -> &'a Point

Source

pub fn edge<'a>(&self, edges: &'a [Edge]) -> Option<&'a Edge>

Source

pub fn next_in_edge<'a>(&self, segments: &'a [Segment]) -> Option<&'a Segment>

Returns the next segment in this segment’s parent edge.

Trait Implementations§

Source§

impl Clone for Segment

Source§

fn clone(&self) -> Segment

Returns a duplicate 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 Debug for Segment

Source§

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

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

impl Default for Segment

Source§

fn default() -> Segment

Returns the “default value” for a type. Read more
Source§

impl PartialEq for Segment

Source§

fn eq(&self, other: &Segment) -> 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 Copy for Segment

Source§

impl Eq for Segment

Source§

impl StructuralPartialEq for Segment

Auto Trait Implementations§

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, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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.