10 #ifndef __LIBPAGEMAKER_OUTPUTSHAPE_H__ 11 #define __LIBPAGEMAKER_OUTPUTSHAPE_H__ 41 : m_isClosed(isClosed), m_shapeType(shape), m_points(), m_rotation(rotation), m_skew(skew),
42 m_bboxLeft(), m_bboxTop(), m_bboxRight(), m_bboxBot(), m_fillProps(fillProps), m_strokeProps(strokeProps), m_text(), m_charProps(), m_paraProps(), m_bitmap(), m_width(), m_height()
45 OutputShape(
bool isClosed,
int shape,
double rotation,
double skew, std::string text, std::vector<PMDCharProperties> charProps, std::vector<PMDParaProperties> paraProps)
46 : m_isClosed(isClosed), m_shapeType(shape), m_points(), m_rotation(rotation), m_skew(skew),
47 m_bboxLeft(), m_bboxTop(), m_bboxRight(), m_bboxBot(),
50 m_text(text), m_charProps(charProps), m_paraProps(paraProps), m_bitmap(), m_width(), m_height()
53 OutputShape(
bool isClosed,
int shape,
double rotation,
double skew, librevenge::RVNGBinaryData bitmap)
54 : m_isClosed(isClosed), m_shapeType(shape), m_points(), m_rotation(rotation), m_skew(skew),
55 m_bboxLeft(), m_bboxTop(), m_bboxRight(), m_bboxBot(),
58 m_text(), m_charProps(), m_paraProps(), m_bitmap(bitmap), m_width(), m_height()
63 return m_points.size();
68 return (m_points.size() > i) ? m_points[i] :
InchPoint(0, 0);
123 if (m_points.empty() && m_bitmap.empty())
127 return std::make_pair(
InchPoint(m_bboxLeft, m_bboxTop),
InchPoint(m_bboxRight, m_bboxBot));
132 m_bboxLeft = bboxTopLeft.
m_x;
133 m_bboxTop = bboxTopLeft.
m_y;
134 m_bboxRight = bboxBotRight.
m_x;
135 m_bboxBot = bboxBotRight.
m_y;
162 const std::shared_ptr<const PMDLineSet> &lineSet,
const InchPoint &translate);
uint8_t shapeType() const
Definition: OutputShape.h:76
std::string m_text
Definition: OutputShape.h:33
std::shared_ptr< OutputShape > newOutputShape(const std::shared_ptr< const PMDLineSet > &lineSet, const InchPoint &translate)
Definition: OutputShape.cpp:17
double m_bboxBot
Definition: OutputShape.h:30
PMDFillProperties m_fillProps
Definition: OutputShape.h:31
const PMDFillProperties & getFillProperties() const
Definition: OutputShape.h:81
bool getIsClosed() const
Definition: OutputShape.h:71
OutputShape(bool isClosed, int shape, double rotation, double skew, const PMDFillProperties &fillProps, const PMDStrokeProperties &strokeProps)
Definition: OutputShape.h:40
double m_height
Definition: OutputShape.h:37
unsigned numPoints() const
Definition: OutputShape.h:61
std::string getText() const
Definition: OutputShape.h:101
double getRotation() const
Definition: OutputShape.h:91
Definition: geometry.h:24
bool m_isClosed
Definition: OutputShape.h:25
double getHeight() const
Definition: OutputShape.h:154
std::pair< InchPoint, InchPoint > getBoundingBox() const
Definition: OutputShape.h:121
double m_rotation
Definition: OutputShape.h:28
void addPoint(InchPoint point)
Definition: OutputShape.h:138
uint8_t m_shapeType
Definition: OutputShape.h:26
double getSkew() const
Definition: OutputShape.h:96
Unit m_x
Definition: geometry.h:26
std::vector< InchPoint > m_points
Definition: OutputShape.h:27
double getWidth() const
Definition: OutputShape.h:149
Unit m_y
Definition: geometry.h:27
OutputShape(bool isClosed, int shape, double rotation, double skew, librevenge::RVNGBinaryData bitmap)
Definition: OutputShape.h:53
OutputShape(bool isClosed, int shape, double rotation, double skew, std::string text, std::vector< PMDCharProperties > charProps, std::vector< PMDParaProperties > paraProps)
Definition: OutputShape.h:45
void setBoundingBox(InchPoint bboxTopLeft, InchPoint bboxBotRight)
Definition: OutputShape.h:130
double m_width
Definition: OutputShape.h:37
Definition: OutputShape.h:23
Point< double > InchPoint
Definition: geometry.h:34
double m_bboxTop
Definition: OutputShape.h:30
Definition: PMDExceptions.h:56
void setDimensions(double width, double height)
Definition: OutputShape.h:143
librevenge::RVNGBinaryData m_bitmap
Definition: OutputShape.h:36
Definition: PMDTypes.h:43
std::vector< PMDParaProperties > getParaProperties() const
Definition: OutputShape.h:111
Definition: PMDTypes.h:53
std::vector< PMDParaProperties > m_paraProps
Definition: OutputShape.h:35
std::vector< PMDCharProperties > m_charProps
Definition: OutputShape.h:34
Definition: geometry.h:22
double m_bboxLeft
Definition: OutputShape.h:30
InchPoint getPoint(unsigned i) const
Definition: OutputShape.h:66
PMDStrokeProperties m_strokeProps
Definition: OutputShape.h:32
double m_bboxRight
Definition: OutputShape.h:30
std::vector< PMDCharProperties > getCharProperties() const
Definition: OutputShape.h:106
double m_skew
Definition: OutputShape.h:29
const PMDStrokeProperties & getStrokeProperties() const
Definition: OutputShape.h:86
librevenge::RVNGBinaryData getBitmap() const
Definition: OutputShape.h:116