16 #ifndef AGG_TRANS_DOUBLE_PATH_INCLUDED 17 #define AGG_TRANS_DOUBLE_PATH_INCLUDED 19 #include "agg_basics.h" 20 #include "agg_vertex_sequence.h" 43 void base_length(
double v) { m_base_length = v; }
44 double base_length()
const {
return m_base_length; }
47 void base_height(
double v) { m_base_height = v; }
48 double base_height()
const {
return m_base_height; }
51 void preserve_x_scale(
bool f) { m_preserve_x_scale = f; }
52 bool preserve_x_scale()
const {
return m_preserve_x_scale; }
56 void move_to1(
double x,
double y);
57 void line_to1(
double x,
double y);
58 void move_to2(
double x,
double y);
59 void line_to2(
double x,
double y);
60 void finalize_paths();
63 template<
class VertexSource1,
class VertexSource2>
64 void add_paths(VertexSource1& vs1, VertexSource2& vs2,
65 unsigned path1_id=0,
unsigned path2_id=0)
73 while(!is_stop(cmd = vs1.vertex(&x, &y)))
89 while(!is_stop(cmd = vs2.vertex(&x, &y)))
107 double total_length1()
const;
108 double total_length2()
const;
109 void transform(
double *x,
double *y)
const;
112 double finalize_path(vertex_storage& vertices);
113 void transform1(
const vertex_storage& vertices,
114 double kindex,
double kx,
115 double *x,
double* y)
const;
117 vertex_storage m_src_vertices1;
118 vertex_storage m_src_vertices2;
119 double m_base_length;
120 double m_base_height;
125 bool m_preserve_x_scale;