14 #include <librevenge/librevenge.h> 27 virtual void writeOut(librevenge::RVNGPropertyListVector &vec)
const = 0;
37 CDRPath() : m_elements(), m_isClosed(false) {}
43 void appendMoveTo(
double x,
double y);
44 void appendLineTo(
double x,
double y);
45 void appendCubicBezierTo(
double x1,
double y1,
double x2,
double y2,
double x,
double y);
46 void appendQuadraticBezierTo(
double x1,
double y1,
double x,
double y);
47 void appendSplineTo(std::vector<std::pair<double, double> > &points);
48 void appendArcTo(
double rx,
double ry,
double rotation,
bool longAngle,
bool sweep,
double x,
double y);
49 void appendClosePath();
50 void appendPath(
const CDRPath &path);
52 void writeOut(librevenge::RVNGPropertyListVector &vec)
const;
53 void writeOut(librevenge::RVNGString &path, librevenge::RVNGString &viewBox,
double &width)
const;
60 bool isClosed()
const;
virtual ~CDRPathElement()
Definition: CDRPath.h:26
CDRPath()
Definition: CDRPath.h:37
virtual void writeOut(librevenge::RVNGPropertyListVector &vec) const =0
virtual void transform(const CDRTransforms &trafos)=0
Definition: CDRCollector.h:29
virtual CDRPathElement * clone()=0
CDRPathElement()
Definition: CDRPath.h:25
bool m_isClosed
Definition: CDRPath.h:64
std::vector< CDRPathElement * > m_elements
Definition: CDRPath.h:63