MWAWGraphicShape Class Reference

a structure used to define a picture shape More...

#include <MWAWGraphicShape.hxx>

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...
 

Public Member Functions

 MWAWGraphicShape ()
 constructor More...
 
virtual ~MWAWGraphicShape ()
 virtual destructor More...
 
void translate (Vec2f const &delta)
 translate all the coordinate by delta More...
 
MWAWGraphicShape rotate (float angle, Vec2f const &center) const
 return a new shape corresponding to a rotation from center. More...
 
Box2f getBdBox (MWAWGraphicStyle const &style, bool moveToO=false) const
 returns the bdbox corresponding to a style More...
 
bool send (MWAWGraphicInterface &interface, MWAWGraphicStyle const &style, Vec2f const &orig) const
 add shape to a graphic listener More...
 
int cmp (MWAWGraphicShape const &a) const
 compare two shapes More...
 

Static Public Member Functions

static MWAWGraphicShape line (Vec2f const &orign, Vec2f const &dest)
 static constructor to create a line More...
 
static MWAWGraphicShape rectangle (Box2f const &box, Vec2f const &corners=Vec2f(0, 0))
 static constructor to create a rectangle More...
 
static MWAWGraphicShape circle (Box2f const &box)
 static constructor to create a circle More...
 
static MWAWGraphicShape arc (Box2f const &box, Box2f const &circleBox, Vec2f const &angles)
 static constructor to create a arc More...
 
static MWAWGraphicShape pie (Box2f const &box, Box2f const &circleBox, Vec2f const &angles)
 static constructor to create a pie More...
 
static MWAWGraphicShape polygon (Box2f const &box)
 static constructor to create a polygon More...
 
static MWAWGraphicShape path (Box2f const &box)
 static constructor to create a path More...
 

Public Attributes

Type m_type
 the type More...
 
Box2f m_bdBox
 the shape bdbox More...
 
Box2f 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< Vec2fm_vertices
 the list of vertices for lines or polygons More...
 
std::vector< PathDatam_path
 the list of path component More...
 
std::string m_extra
 extra data More...
 

Protected Member Functions

std::vector< PathDatagetPath () const
 return a path corresponding to the shape More...
 

Friends

std::ostream & operator<< (std::ostream &o, MWAWGraphicShape const &sh)
 a print operator More...
 

Detailed Description

a structure used to define a picture shape

Member Enumeration Documentation

an enum used to define the shape type

Enumerator
Arc 
Circle 
Line 
Rectangle 
Path 
Pie 
Polygon 
ShapeUnknown 

Constructor & Destructor Documentation

MWAWGraphicShape::MWAWGraphicShape ( )
inline

constructor

virtual MWAWGraphicShape::~MWAWGraphicShape ( )
inlinevirtual

virtual destructor

Member Function Documentation

static MWAWGraphicShape MWAWGraphicShape::arc ( Box2f const &  box,
Box2f const &  circleBox,
Vec2f const &  angles 
)
inlinestatic

static constructor to create a arc

Referenced by MSKGraph::getEntryPicture(), and GWGraph::readFrameHeader().

static MWAWGraphicShape MWAWGraphicShape::circle ( Box2f const &  box)
inlinestatic

static constructor to create a circle

int MWAWGraphicShape::cmp ( MWAWGraphicShape const &  a) const

compare two shapes

Box2f MWAWGraphicShape::getBdBox ( MWAWGraphicStyle const &  style,
bool  moveToO = false 
) const

returns the bdbox corresponding to a style

Referenced by MWAWContentListener::insertPicture().

std::vector< MWAWGraphicShape::PathData > MWAWGraphicShape::getPath ( ) const
protected

return a path corresponding to the shape

Referenced by rotate().

MWAWGraphicShape MWAWGraphicShape::line ( Vec2f const &  orign,
Vec2f const &  dest 
)
static
static MWAWGraphicShape MWAWGraphicShape::path ( Box2f const &  box)
inlinestatic

static constructor to create a path

Referenced by MSKGraph::getEntryPicture(), GWGraph::readFrameHeader(), and rotate().

static MWAWGraphicShape MWAWGraphicShape::pie ( Box2f const &  box,
Box2f const &  circleBox,
Vec2f const &  angles 
)
inlinestatic

static constructor to create a pie

Referenced by CWGraph::readShape().

static MWAWGraphicShape MWAWGraphicShape::polygon ( Box2f const &  box)
inlinestatic

static constructor to create a polygon

Referenced by MSKGraph::getEntryPicture(), and GWGraph::readFrameHeader().

static MWAWGraphicShape MWAWGraphicShape::rectangle ( Box2f const &  box,
Vec2f const &  corners = Vec2f(0,0) 
)
inlinestatic
MWAWGraphicShape MWAWGraphicShape::rotate ( float  angle,
Vec2f const &  center 
) const

return a new shape corresponding to a rotation from center.

Note
the final bdbox is not tight

Referenced by CWGraph::readShape().

bool MWAWGraphicShape::send ( MWAWGraphicInterface interface,
MWAWGraphicStyle const &  style,
Vec2f const &  orig 
) const

add shape to a graphic listener

Referenced by MWAWGraphicListener::insertPicture().

void MWAWGraphicShape::translate ( Vec2f const &  delta)

translate all the coordinate by delta

Referenced by CWGraph::readShape().

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  o,
MWAWGraphicShape const &  sh 
)
friend

a print operator

Member Data Documentation

Vec2f MWAWGraphicShape::m_arcAngles

the start and end value which defines an arc

Referenced by arc(), cmp(), getPath(), operator<<(), pie(), HMWJGraph::readShapeGraph(), HMWKGraph::readShapeGraph(), and send().

std::string MWAWGraphicShape::m_extra

extra data

Referenced by operator<<(), and CWGraph::readShape().

Box2f MWAWGraphicShape::m_formBox
std::vector<PathData> MWAWGraphicShape::m_path

The documentation for this class was generated from the following files:

Generated on Tue Mar 10 2015 17:32:10 for libmwaw by doxygen 1.8.5