16 #include "agg_vpgen_clip_polyline.h" 17 #include "agg_clip_liang_barsky.h" 22 void vpgen_clip_polyline::reset()
30 void vpgen_clip_polyline::move_to(
double x,
double y)
40 void vpgen_clip_polyline::line_to(
double x,
double y)
44 unsigned flags = clip_line_segment(&m_x1, &m_y1, &x2, &y2, m_clip_box);
50 if((flags & 1) != 0 || m_move_to)
54 m_cmd[0] = path_cmd_move_to;
57 m_x[m_num_vertices] = x2;
58 m_y[m_num_vertices] = y2;
59 m_cmd[m_num_vertices++] = path_cmd_line_to;
60 m_move_to = (flags & 2) != 0;
67 unsigned vpgen_clip_polyline::vertex(
double* x,
double* y)
69 if(m_vertex < m_num_vertices)
73 return m_cmd[m_vertex++];