Lines Matching refs:start

707         unsigned arrange_polygon_orientation(unsigned start, path_flags_e orientation);
710 void invert_polygon(unsigned start);
800 unsigned perceive_polygon_orientation(unsigned start, unsigned end);
801 void invert_polygon(unsigned start, unsigned end);
1176 unsigned path_base<VC>::perceive_polygon_orientation(unsigned start,
1181 unsigned np = end - start;
1187 m_vertices.vertex(start + i, &x1, &y1);
1188 m_vertices.vertex(start + (i + 1) % np, &x2, &y2);
1197 void path_base<VC>::invert_polygon(unsigned start, unsigned end)
1200 unsigned tmp_cmd = m_vertices.command(start);
1205 for(i = start; i < end; i++)
1214 while(end > start)
1216 m_vertices.swap_vertices(start++, end--);
1222 void path_base<VC>::invert_polygon(unsigned start)
1225 while(start < m_vertices.total_vertices() &&
1226 !is_vertex(m_vertices.command(start))) ++start;
1229 while(start+1 < m_vertices.total_vertices() &&
1230 is_move_to(m_vertices.command(start)) &&
1231 is_move_to(m_vertices.command(start+1))) ++start;
1234 unsigned end = start + 1;
1238 invert_polygon(start, end);
1243 unsigned path_base<VC>::arrange_polygon_orientation(unsigned start,
1246 if(orientation == path_flags_none) return start;
1249 while(start < m_vertices.total_vertices() &&
1250 !is_vertex(m_vertices.command(start))) ++start;
1253 while(start+1 < m_vertices.total_vertices() &&
1254 is_move_to(m_vertices.command(start)) &&
1255 is_move_to(m_vertices.command(start+1))) ++start;
1258 unsigned end = start + 1;
1262 if(end - start > 2)
1264 if(perceive_polygon_orientation(start, end) != unsigned(orientation))
1267 invert_polygon(start, end);
1282 unsigned path_base<VC>::arrange_orientations(unsigned start,
1287 while(start < m_vertices.total_vertices())
1289 start = arrange_polygon_orientation(start, orientation);
1290 if(is_stop(m_vertices.command(start)))
1292 ++start;
1297 return start;
1307 unsigned start = 0;
1308 while(start < m_vertices.total_vertices())
1310 start = arrange_orientations(start, orientation);