19 #ifndef AGG_VERTEX_SEQUENCE_INCLUDED 20 #define AGG_VERTEX_SEQUENCE_INCLUDED 22 #include "agg_basics.h" 23 #include "agg_array.h" 66 template<
class T,
unsigned S=6>
72 void add(
const T& val);
73 void modify_last(
const T& val);
74 void close(
bool remove_flag);
80 template<
class T,
unsigned S>
83 if(base_type::size() > 1)
85 if(!(*
this)[base_type::size() - 2]((*
this)[base_type::size() - 1]))
87 base_type::remove_last();
95 template<
class T,
unsigned S>
98 base_type::remove_last();
105 template<
class T,
unsigned S>
108 while(base_type::size() > 1)
110 if((*
this)[base_type::size() - 2]((*
this)[base_type::size() - 1]))
break;
111 T t = (*this)[base_type::size() - 1];
112 base_type::remove_last();
118 while(base_type::size() > 1)
120 if((*
this)[base_type::size() - 1]((*
this)[0]))
break;
121 base_type::remove_last();
147 bool ret = (dist = calc_distance(x, y, val.x, val.y)) > vertex_dist_epsilon;
148 if(!ret) dist = 1.0 / vertex_dist_epsilon;