10 #ifndef __POLYGONUTILS_H__
11 #define __POLYGONUTILS_H__
15 #include <librevenge/librevenge.h>
16 #include <boost/function.hpp>
17 #include <boost/shared_ptr.hpp>
76 Coordinate getTextRectangle(
double x,
double y,
double width,
double height, boost::function<
double(
unsigned index)> calculator)
const;
78 CustomShape(
const Vertex *p_vertices,
unsigned numVertices,
const unsigned short *p_elements,
unsigned numElements,
const Calculation *p_calculations,
unsigned numCalculations,
const int *p_defaultAdjustValues,
unsigned numDefaultAdjustValues,
const TextRectangle *p_textRectangles,
unsigned numTextRectangles,
unsigned coordWidth,
unsigned coordHeight,
const Vertex *p_gluePoints,
unsigned numGluePoints,
unsigned char adjustShiftMask = 0) :
79 mp_vertices(p_vertices), m_numVertices(numVertices),
80 mp_elements(p_elements), m_numElements(numElements),
81 mp_calculations(p_calculations), m_numCalculations(numCalculations),
82 mp_defaultAdjustValues(p_defaultAdjustValues), m_numDefaultAdjustValues(numDefaultAdjustValues),
83 mp_textRectangles(p_textRectangles), m_numTextRectangles(numTextRectangles),
84 m_coordWidth(coordWidth), m_coordHeight(coordHeight),
85 mp_gluePoints(p_gluePoints), m_numGluePoints(numGluePoints),
86 m_adjustShiftMask(adjustShiftMask)
104 : m_vertices(), m_elements(),
105 m_calculations(), m_defaultAdjustValues(),
106 m_textRectangles(), m_gluePoints(),
107 m_coordWidth(coordWidth), m_coordHeight(coordHeight),
117 librevenge::RVNGPropertyList
calcClipPath(
const std::vector<libmspub::Vertex> &verts,
double x,
double y,
double height,
double width, VectorTransformation2D transform, boost::shared_ptr<const CustomShape> shape);
118 void writeCustomShape(
ShapeType shapeType, librevenge::RVNGPropertyList &graphicsProps, librevenge::RVNGDrawingInterface *painter,
double x,
double y,
double height,
double width,
bool closeEverything, VectorTransformation2D transform, std::vector<Line> lines, boost::function<
double(
unsigned index)> calculator,
const std::vector<Color> &palette, boost::shared_ptr<const CustomShape> shape);
std::vector< Vertex > m_vertices
Definition: PolygonUtils.h:93
unsigned m_coordWidth
Definition: PolygonUtils.h:70
const int PROP_ADJUST_VAL_FIRST
Definition: PolygonUtils.h:26
void writeCustomShape(ShapeType shapeType, librevenge::RVNGPropertyList &graphicsProps, librevenge::RVNGDrawingInterface *painter, double x, double y, double height, double width, bool closeEverything, VectorTransformation2D transform, std::vector< Line > lines, boost::function< double(unsigned index)> calculator, const std::vector< Color > &palette, boost::shared_ptr< const CustomShape > shape)
Definition: PolygonUtils.cpp:5908
const int * mp_defaultAdjustValues
Definition: PolygonUtils.h:66
Definition: PolygonUtils.h:91
int m_argThree
Definition: PolygonUtils.h:49
std::vector< TextRectangle > m_textRectangles
Definition: PolygonUtils.h:97
const int PROP_GEO_RIGHT
Definition: PolygonUtils.h:30
int m_flags
Definition: PolygonUtils.h:46
const int OTHER_CALC_VAL
Definition: PolygonUtils.h:33
int m_argTwo
Definition: PolygonUtils.h:48
CustomShape(const Vertex *p_vertices, unsigned numVertices, const unsigned short *p_elements, unsigned numElements, const Calculation *p_calculations, unsigned numCalculations, const int *p_defaultAdjustValues, unsigned numDefaultAdjustValues, const TextRectangle *p_textRectangles, unsigned numTextRectangles, unsigned coordWidth, unsigned coordHeight, const Vertex *p_gluePoints, unsigned numGluePoints, unsigned char adjustShiftMask=0)
Definition: PolygonUtils.h:78
unsigned m_coordWidth
Definition: PolygonUtils.h:99
unsigned m_numVertices
Definition: PolygonUtils.h:61
Coordinate getTextRectangle(double x, double y, double width, double height, boost::function< double(unsigned index)> calculator) const
Definition: PolygonUtils.cpp:5683
unsigned m_numElements
Definition: PolygonUtils.h:63
std::vector< unsigned short > m_elements
Definition: PolygonUtils.h:94
bool isShapeTypeRectangle(ShapeType type)
Definition: PolygonUtils.cpp:6375
boost::shared_ptr< const CustomShape > getFromDynamicCustomShape(const DynamicCustomShape &dcs)
Definition: PolygonUtils.cpp:6381
Vertex second
Definition: PolygonUtils.h:55
Vertex first
Definition: PolygonUtils.h:54
const int PROP_GEO_LEFT
Definition: PolygonUtils.h:28
Definition: Coordinate.h:15
librevenge::RVNGPropertyList calcClipPath(const std::vector< Vertex > &verts, double x, double y, double height, double width, VectorTransformation2D transform, boost::shared_ptr< const CustomShape > shape)
Definition: PolygonUtils.cpp:5883
const unsigned short * mp_elements
Definition: PolygonUtils.h:62
unsigned m_numTextRectangles
Definition: PolygonUtils.h:69
Definition: PolygonUtils.h:38
int m_x
Definition: PolygonUtils.h:40
int m_argOne
Definition: PolygonUtils.h:47
const int PROP_GEO_TOP
Definition: PolygonUtils.h:29
const Vertex * mp_gluePoints
Definition: PolygonUtils.h:72
unsigned m_numDefaultAdjustValues
Definition: PolygonUtils.h:67
unsigned char m_adjustShiftMask
Definition: PolygonUtils.h:74
int m_y
Definition: PolygonUtils.h:41
unsigned m_coordHeight
Definition: PolygonUtils.h:100
const int ASPECT_RATIO
Definition: PolygonUtils.h:34
DynamicCustomShape(unsigned coordWidth, unsigned coordHeight)
Definition: PolygonUtils.h:103
Definition: PolygonUtils.h:44
const TextRectangle * mp_textRectangles
Definition: PolygonUtils.h:68
const int PROP_ADJUST_VAL_LAST
Definition: PolygonUtils.h:27
Definition: PolygonUtils.h:58
std::vector< Vertex > m_gluePoints
Definition: PolygonUtils.h:98
const CustomShape * getCustomShape(ShapeType type)
Definition: PolygonUtils.cpp:5245
Definition: PolygonUtils.h:52
Definition: MSPUBCollector.h:46
const Calculation * mp_calculations
Definition: PolygonUtils.h:64
unsigned char m_adjustShiftMask
Definition: PolygonUtils.h:101
std::vector< int > m_defaultAdjustValues
Definition: PolygonUtils.h:96
const int PROP_GEO_BOTTOM
Definition: PolygonUtils.h:31
const Vertex * mp_vertices
Definition: PolygonUtils.h:60
unsigned m_coordHeight
Definition: PolygonUtils.h:71
ShapeType
Definition: ShapeType.h:15
std::vector< Calculation > m_calculations
Definition: PolygonUtils.h:95
unsigned m_numGluePoints
Definition: PolygonUtils.h:73
unsigned m_numCalculations
Definition: PolygonUtils.h:65