out_vertices
void calc_miter(VertexConsumer& out_vertices,
void math_stroke<VC>::calc_arc(VC& out_vertices,
out_vertices.add(coord_type(x + dx1, y + dy1));
out_vertices.add(coord_type(x + cos(a1) * m_width,
out_vertices.add(coord_type(x + cos(a1) * m_width,
out_vertices.add(coord_type(x + dx2, y + dy2));
void math_stroke<VC>::calc_miter(VC& out_vertices,
out_vertices.add(coord_type(xi, yi));
out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
calc_arc(out_vertices, v1.x, v1.y, dx1, -dy1, dx2, -dy2);
out_vertices.add(coord_type(v1.x + dx1 + dy1 * ml,
out_vertices.add(coord_type(v1.x + dx2 - dy2 * ml,
void math_stroke<VC>::calc_cap(VC& out_vertices,
out_vertices.remove_all();
out_vertices.add(coord_type(v0.x - dx1 - dx2, v0.y + dy1 - dy2));
out_vertices.add(coord_type(v0.x + dx1 - dx2, v0.y - dy1 - dy2));
out_vertices.add(coord_type(v0.x - dx1, v0.y + dy1));
out_vertices.add(coord_type(v0.x + cos(a1) * m_width,
out_vertices.add(coord_type(v0.x + cos(a1) * m_width,
out_vertices.add(coord_type(v0.x + dx1, v0.y - dy1));
void math_stroke<VC>::calc_join(VC& out_vertices,
out_vertices.remove_all();
out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
calc_miter(out_vertices,
calc_miter(out_vertices,
out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
out_vertices.add(coord_type(v1.x, v1.y ));
out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
out_vertices.add(coord_type(v1.x, v1.y ));
calc_arc(out_vertices, v1.x, v1.y, dx2, -dy2, dx1, -dy1);
out_vertices.add(coord_type(v1.x, v1.y ));
out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
calc_miter(out_vertices,
calc_arc(out_vertices, v1.x, v1.y, dx1, -dy1, dx2, -dy2);
out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
void calc_cap(VertexConsumer& out_vertices,
void calc_join(VertexConsumer& out_vertices,
void calc_arc(VertexConsumer& out_vertices,
m_status = out_vertices;
case out_vertices:
m_status = out_vertices;
m_status = out_vertices;
m_status = out_vertices;
m_status = out_vertices;
case out_vertices: