Struct lyon_tessellation::BuffersBuilder [] [src]

pub struct BuffersBuilder<'l, VertexType: 'l, Input, Ctor> { /* fields omitted */ }

A temporary view on a VertexBuffers object which facilitate the population of vertex and index data.

BuffersBuilders record the vertex offset from when they are created so that algorithms using them don't need to worry about offsetting indices if some geometry was added beforehand. This means that from the point of view of a BuffersBuilder user, the first added vertex is at always offset at the offset 0 and VertexBuilfer takes care of translating indices adequately.

Often, algorithms are built to generate vertex positions without knowledge of eventual other vertex attributes. The VertexConstructor does the translation from generic Input to VertexType. If your logic generates the actual vertex type directly, you can use the SimpleBuffersBuilder convenience typedef.

Methods

impl<'l, VertexType: 'l, Input, Ctor> BuffersBuilder<'l, VertexType, Input, Ctor>
[src]

[src]

[src]

Trait Implementations

impl<'l, VertexType, Input, Ctor> GeometryBuilder<Input> for BuffersBuilder<'l, VertexType, Input, Ctor> where
    VertexType: 'l + Clone,
    Ctor: VertexConstructor<Input, VertexType>, 
[src]

[src]

Called at the beginning of a generation. Read more

[src]

Called at the end of a generation. Returns the number of vertices and indices added since the last time begin_geometry was called. Read more

[src]

Inserts a vertex, providing its position, and optionally a normal. Retuns a vertex id that is only valid between begin_geometry and end_geometry. Read more

[src]

Insert a triangle made of vertices that were added after the last call to begin_geometry. Read more

[src]

abort_geometry is called instead of end_geometry if an error occured while producing the geometry and we won't be able to finish. Read more

impl<'l, VertexType, InputVertex, InputIndex, Ctor> GeometryReceiver<InputVertex, InputIndex> for BuffersBuilder<'l, VertexType, InputVertex, Ctor> where
    VertexType: 'l + Clone,
    Ctor: VertexConstructor<InputVertex, VertexType>,
    InputVertex: Clone,
    InputIndex: Into<VertexId> + Clone
[src]

[src]

Auto Trait Implementations

impl<'l, VertexType, Input, Ctor> Send for BuffersBuilder<'l, VertexType, Input, Ctor> where
    Ctor: Send,
    Input: Send,
    VertexType: Send

impl<'l, VertexType, Input, Ctor> Sync for BuffersBuilder<'l, VertexType, Input, Ctor> where
    Ctor: Sync,
    Input: Sync,
    VertexType: Sync