Go to the documentation of this file.
10 #ifndef IWORKPATH_H_INCLUDED
11 #define IWORKPATH_H_INCLUDED
17 #include <glm/glm.hpp>
19 #include <librevenge/librevenge.h>
54 void computeBoundingBox(
double &minX,
double &minY,
double &maxX,
double &maxY,
double factor=1)
const;
70 void write(librevenge::RVNGPropertyListVector &vec,
double deltaX=0,
double deltaY=0)
const;
100 #endif // IWORKPATH_H_INCLUDED
std::deque< CurveElement_t > Curve_t
Definition: IWORKPath.cpp:75
Definition: IWORKBezierElement.cpp:21
bool m_isSpline
Definition: IWORKPath.h:95
std::deque< Curve_t > Path_t
Definition: IWORKPath.cpp:76
Path_t m_path
Definition: IWORKPath.cpp:82
void appendMoveTo(double x, double y)
IWORKPath(const IWORKPath &other)
@ pos
Definition: IWORKToken.h:592
boost::optional< IWORKSize > m_size
Definition: IWORKPath.h:94
Definition: IWORKPath.h:29
double m_y2
Definition: IWORKPath.cpp:55
void appendQCurveTo(double x1, double y1, double x, double y)
boost::variant< MoveTo, LineTo, CCurveTo, QCurveTo, ClosePolygon > CurveElement_t
Definition: IWORKPath.cpp:74
#define ETONYEK_DEBUG_MSG(M)
Definition: libetonyek_utils.h:54
void write(librevenge::RVNGPropertyListVector &vec, double deltaX=0, double deltaY=0) const
Create librevenge representation of this path.
const std::string str() const
bool operator!=(const IWORKPath &left, const IWORKPath &right)
@ left
Definition: IWORKToken.h:568
bool m_closed
Definition: IWORKPath.cpp:83
Definition: IWORKPath.cpp:69
double m_x1
Definition: IWORKPath.cpp:62
@ b
Definition: IWORKToken.h:507
optional< IWORKSize > m_size
Definition: IWORKPathElement.cpp:48
@ element
Definition: IWORKToken.h:188
IWORKPath operator*(const IWORKPath &path, const glm::dmat3 &tr)
Create a transformed path.
std::shared_ptr< Impl > m_impl
Definition: IWORKPath.h:72
double m_x
Definition: IWORKPath.cpp:46
void swap(IWORKPath &other)
double pt2in(const double d)
Convert a length from points to inches.
Definition: libetonyek_utils.cpp:225
void computeBoundingBox(double &minX, double &minY, double &maxX, double &maxY, double factor=1) const
Definition: IWORKPath.h:88
@ r
Definition: IWORKToken.h:373
Definition: IWORKPath.h:34
double m_x
Definition: IWORKPath.cpp:64
@ first
Definition: IWORKToken.h:524
Definition: IWORKPath.cpp:45
void operator*=(const glm::dmat3 &tr)
Transform all elements of the path.
@ string
Definition: IWORKToken.h:411
double m_x
Definition: IWORKPath.cpp:56
bool approxEqual(const IWORKPath &left, const IWORKPath &right, double eps=ETONYEK_EPSILON)
@ path
Definition: IWORKToken.h:358
IWORKPathPtr_t m_path
Definition: IWORKPathElement.cpp:284
std::shared_ptr< IWORKPath > IWORKPathPtr_t
Definition: IWORKPath_fwd.h:20
char m_char
Definition: IWORKPath.cpp:70
double m_y
Definition: IWORKPath.cpp:41
@ c
Definition: IWORKToken.h:509
void appendCCurveTo(double x1, double y1, double x2, double y2, double x, double y)
double m_x2
Definition: IWORKPath.cpp:54
friend bool approxEqual(const IWORKPath &left, const IWORKPath &right, const double eps)
unsigned m_tr
Definition: KEY1TableElement.cpp:107
boost::optional< IWORKPosition > m_positions[3]
Definition: IWORKPath.h:93
boost::optional< double > m_width
Definition: IWORKStrokeContext.cpp:229
double y
Definition: IWORKShape.cpp:46
void closePath(bool closeOnlyIsSamePoint=true)
IWORKPath & operator=(const IWORKPath &other)
@ double_
Definition: IWORKToken.h:655
@ d
Definition: IWORKToken.h:173
double x
Definition: IWORKShape.cpp:45
@ a
Definition: IWORKToken.h:501
double m_x
Definition: IWORKPath.cpp:40
Definition: IWORKPath.cpp:61
@ t
Definition: IWORKToken.h:420
@ i
Definition: KEY2Token.h:101
@ tr
Definition: KEY1Token.h:206
double m_y
Definition: IWORKPath.cpp:47
@ line
Definition: IWORKToken.h:298
Definition: IWORKPath.cpp:39
Definition: IWORKPath.cpp:51
double m_y1
Definition: IWORKPath.cpp:63
double m_y
Definition: IWORKPath.cpp:65
void appendLineTo(double x, double y)
double m_y
Definition: IWORKPath.cpp:57
@ right
Definition: IWORKToken.h:597
Definition: IWORKPath.cpp:79
#define ETONYEK_EPSILON
Definition: libetonyek_utils.h:26
const ValueT & get(const detail::IWAFieldImpl< TagV, ValueT, Reader > &field)
Definition: IWAField.h:190
IWORKPathPtr_t getPath() const
double m_y1
Definition: IWORKPath.cpp:53
double m_x1
Definition: IWORKPath.cpp:52
IWORKPath(const std::string &path)
Impl()
Definition: IWORKPath.cpp:86
bool operator==(const IWORKPath &left, const IWORKPath &right)
Generated for libetonyek by
doxygen 1.8.20