#pragma once #include #include #include #include #include #include namespace mln { namespace gfx { /// Generate fill buffers, without outline void generateFillBuffers(const GeometryCollection& geometry, gfx::VertexVector& fillVertices, gfx::IndexVector& fillIndexes, SegmentVector& fillSegments); /// Generate fill and outline buffers, with the outline composed of line primitives. void generateFillAndOutineBuffers(const GeometryCollection& geometry, gfx::VertexVector& vertices, gfx::IndexVector& fillIndexes, SegmentVector& fillSegments, gfx::IndexVector& lineIndexes, SegmentVector& lineSegments); /// Generate fill and outline buffers, where the outlines are built with triangle primitives void generateFillAndOutineBuffers(const GeometryCollection& geometry, gfx::VertexVector& fillVertices, gfx::IndexVector& fillIndexes, SegmentVector& fillSegments, gfx::VertexVector& lineVertices, gfx::IndexVector& lineIndexes, SegmentVector& lineSegments); /// Generate fill and outline buffers, where the outlines are built both with triangle primitives AND with simple lines void generateFillAndOutineBuffers(const GeometryCollection& geometry, gfx::VertexVector& fillVertices, gfx::IndexVector& fillIndexes, SegmentVector& fillSegments, gfx::VertexVector& lineVertices, gfx::IndexVector& lineIndexes, SegmentVector& lineSegments, gfx::IndexVector& basicLineIndexes, SegmentVector& basicLineSegments); } // namespace gfx } // namespace mln