MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ GlyphGeometryNode() [2/2]

MayaFlux::Nodes::GpuSync::GlyphGeometryNode::GlyphGeometryNode ( Portal::Text::FontFace face,
uint32_t  pixel_size,
std::string  text,
float  pen_x = 0.F,
float  pen_y = 0.F,
float  tolerance = 0.5F 
)

Construct from a UTF-8 string with an explicit FontFace.

Parameters
faceFontFace to decompose from. Must outlive this node.
pixel_sizeGlyph size in pixels.
textUTF-8 string to decompose.
pen_xStarting horizontal pen position in pixels.
pen_yStarting vertical pen position in pixels (baseline).
toleranceBezier flatness tolerance in pixels.

Definition at line 27 of file GlyphGeometryNode.cpp.

35 , m_face(&face)
36 , m_pixel_size(pixel_size)
37 , m_text(std::move(text))
38 , m_pen_x(pen_x)
39 , m_pen_y(pen_y)
41{
42 set_vertex_stride(sizeof(Kakshya::LineVertex));
43 set_vertex_layout(Kakshya::VertexLayout::for_lines(sizeof(Kakshya::LineVertex)));
45}
float tolerance
GeometryWriterNode(uint32_t initial_capacity=1024)
Constructor.
void set_vertex_layout(const Kakshya::VertexLayout &layout)
Set cached vertex layout.
void set_vertex_stride(size_t stride)
Set vertex stride (bytes per vertex)
void rebuild_outlines()
Rebuild outline geometry from the current text and pen settings.
static VertexLayout for_lines(uint32_t stride=60)
Factory: layout for LineVertex (position, color, thickness, uv, normal, tangent)

References MayaFlux::Kakshya::VertexLayout::for_lines(), rebuild_outlines(), MayaFlux::Nodes::GpuSync::GeometryWriterNode::set_vertex_layout(), and MayaFlux::Nodes::GpuSync::GeometryWriterNode::set_vertex_stride().

+ Here is the call graph for this function: