a structure used to define a picture shape More...
#include <WPSGraphicShape.h>
Classes | |
struct | PathData |
a simple path component More... | |
Public Types | |
enum | Type { Arc, Circle, Line, Rectangle, Path, Pie, Polygon, ShapeUnknown } |
an enum used to define the shape type More... | |
enum | Command { C_Ellipse, C_Polyline, C_Rectangle, C_Path, C_Polygon, C_Bad } |
an enum used to define the interface command More... | |
Public Member Functions | |
WPSGraphicShape () | |
constructor More... | |
~WPSGraphicShape () | |
destructor More... | |
void | translate (Vec2f const &delta) |
translate all the coordinate by delta More... | |
void | scale (Vec2f const &factor) |
rescale all the coordinate More... | |
WPSGraphicShape | rotate (float angle, Vec2f const ¢er) const |
return a new shape corresponding to a rotation from center. More... | |
WPSGraphicShape | transform (WPSTransformation const &matrix) const |
returns a new shape corresponding to a matrix transformation More... | |
Type | getType () const |
returns the type corresponding to a shape More... | |
WPSBox2f | getBdBox () const |
returns the basic bdbox More... | |
Command | addTo (Vec2f const &orig, bool asSurface, librevenge::RVNGPropertyList &propList) const |
updates the propList to send to an interface More... | |
int | cmp (WPSGraphicShape const &a) const |
compare two shapes More... | |
Static Public Member Functions | |
static WPSGraphicShape | line (Vec2f const &orign, Vec2f const &dest) |
static constructor to create a line More... | |
static WPSGraphicShape | rectangle (WPSBox2f const &box, Vec2f const &corners=Vec2f(0, 0)) |
static constructor to create a rectangle More... | |
static WPSGraphicShape | circle (WPSBox2f const &box) |
static constructor to create a circle More... | |
static WPSGraphicShape | arc (WPSBox2f const &box, WPSBox2f const &circleWPSBox, Vec2f const &angles) |
static constructor to create a arc More... | |
static WPSGraphicShape | pie (WPSBox2f const &box, WPSBox2f const &circleWPSBox, Vec2f const &angles) |
static constructor to create a pie More... | |
static WPSGraphicShape | polygon (WPSBox2f const &box) |
static constructor to create a polygon More... | |
static WPSGraphicShape | path (WPSBox2f const &box) |
static constructor to create a path More... | |
Public Attributes | |
Type | m_type |
the type More... | |
WPSBox2f | m_bdBox |
the shape bdbox More... | |
WPSBox2f | m_formBox |
the internal shape bdbox ( used for arc, circle to store the circle bdbox ) More... | |
Vec2f | m_cornerWidth |
the rectangle round corner More... | |
Vec2f | m_arcAngles |
the start and end value which defines an arc More... | |
std::vector< Vec2f > | m_vertices |
the list of vertices for lines or polygons More... | |
std::vector< PathData > | m_path |
the list of path component More... | |
std::string | m_extra |
extra data More... | |
Protected Member Functions | |
std::vector< PathData > | getPath (bool forTransformation) const |
return a path corresponding to the shape More... | |
Friends | |
std::ostream & | operator<< (std::ostream &o, WPSGraphicShape const &sh) |
a print operator More... | |
a structure used to define a picture shape
|
inline |
constructor
|
inline |
destructor
WPSGraphicShape::Command WPSGraphicShape::addTo | ( | Vec2f const & | orig, |
bool | asSurface, | ||
librevenge::RVNGPropertyList & | propList | ||
) | const |
updates the propList to send to an interface
Referenced by getBdBox(), and WKSContentListener::insertPicture().
|
inlinestatic |
static constructor to create a arc
Referenced by LotusGraphInternal::ZoneMac::getGraphicShape().
|
inlinestatic |
static constructor to create a circle
Referenced by LotusGraphInternal::ZoneMac::getGraphicShape(), and LotusGraph::readGraphic().
int WPSGraphicShape::cmp | ( | WPSGraphicShape const & | a | ) | const |
compare two shapes
|
inline |
returns the basic bdbox
|
protected |
return a path corresponding to the shape
Referenced by getBdBox(), rotate(), and transform().
|
inline |
returns the type corresponding to a shape
Referenced by WKSContentListener::insertPicture().
|
static |
static constructor to create a line
Referenced by LotusGraphInternal::ZoneMac::getGraphicShape(), LotusGraph::readGraphic(), and ~WPSGraphicShape().
|
inlinestatic |
static constructor to create a path
Referenced by WPSGraphicShape::PathData::PathData(), LotusGraph::readGraphic(), rotate(), and transform().
|
inlinestatic |
static constructor to create a pie
|
inlinestatic |
static constructor to create a polygon
Referenced by LotusGraph::readGraphic().
|
inlinestatic |
static constructor to create a rectangle
Referenced by LotusGraphInternal::ZoneMac::getGraphicShape(), and LotusGraph::readGraphic().
WPSGraphicShape WPSGraphicShape::rotate | ( | float | angle, |
Vec2f const & | center | ||
) | const |
return a new shape corresponding to a rotation from center.
void WPSGraphicShape::scale | ( | Vec2f const & | factor | ) |
rescale all the coordinate
Referenced by transform().
WPSGraphicShape WPSGraphicShape::transform | ( | WPSTransformation const & | matrix | ) | const |
returns a new shape corresponding to a matrix transformation
void WPSGraphicShape::translate | ( | Vec2f const & | delta | ) |
translate all the coordinate by delta
Referenced by transform().
|
friend |
a print operator
Vec2f WPSGraphicShape::m_arcAngles |
WPSBox2f WPSGraphicShape::m_bdBox |
the shape bdbox
Referenced by addTo(), arc(), circle(), cmp(), getBdBox(), line(), operator<<(), path(), pie(), polygon(), rectangle(), rotate(), scale(), transform(), and translate().
Vec2f WPSGraphicShape::m_cornerWidth |
the rectangle round corner
Referenced by addTo(), cmp(), getPath(), operator<<(), and rectangle().
std::string WPSGraphicShape::m_extra |
extra data
Referenced by operator<<().
WPSBox2f WPSGraphicShape::m_formBox |
the internal shape bdbox ( used for arc, circle to store the circle bdbox )
Referenced by addTo(), arc(), circle(), cmp(), getPath(), operator<<(), pie(), rectangle(), scale(), and translate().
std::vector<PathData> WPSGraphicShape::m_path |
the list of path component
Referenced by addTo(), cmp(), getPath(), operator<<(), rotate(), scale(), transform(), and translate().
Type WPSGraphicShape::m_type |
the type
Referenced by arc(), circle(), cmp(), line(), operator<<(), path(), pie(), polygon(), and rectangle().
std::vector<Vec2f> WPSGraphicShape::m_vertices |
the list of vertices for lines or polygons
Referenced by addTo(), cmp(), getPath(), line(), operator<<(), scale(), and translate().