Box2< T > Class Template Reference

small class which defines a 2D Box More...

`#include <libmwaw_internal.hxx>`

## Classes

struct | PosSizeLt
| internal struct used to create sorted map, sorted first min then max More...

## Public Types

typedef std::map< Box2< T >, T, struct PosSizeLt > | Map
| map of Box2 More...

## Public Member Functions

| Box2 (Vec2< T > minPt=Vec2< T >(), Vec2< T > maxPt=Vec2< T >())
| constructor More...
template<class U >
| Box2 (Box2< U > const &p)
| generic constructor More...
Vec2< T > const & | min () const
| the minimum 2D point (in x and in y) More...
Vec2< T > const & | max () const
| the maximum 2D point (in x and in y) More...
Vec2< T > & | min ()
| the minimum 2D point (in x and in y) More...
Vec2< T > & | max ()
| the maximum 2D point (in x and in y) More...
Vec2< T > const & | operator[] (int c) const
| the two extremum points which defined the box More...
Vec2< T > | size () const
| the box size More...
Vec2< T > | center () const
| the box center More...
void | set (Vec2< T > const &x, Vec2< T > const &y)
| resets the data to minimum x and maximum y More...
void | setMin (Vec2< T > const &x)
| resets the minimum point More...
void | setMax (Vec2< T > const &y)
| resets the maximum point More...
void | resizeFromMin (Vec2< T > const &sz)
| resize the box keeping the minimum More...
void | resizeFromMax (Vec2< T > const &sz)
| resize the box keeping the maximum More...
void | resizeFromCenter (Vec2< T > const &sz)
| resize the box keeping the center More...
template<class U >
void | scale (U factor)
| scales all points of the box by factor More...
void | extend (T val)
| extends the bdbox by (val, val) keeping the center More...
bool | operator== (Box2< T > const &p) const
| comparison operator== More...
bool | operator!= (Box2< T > const &p) const
| comparison operator!= More...
bool | operator< (Box2< T > const &p) const
| comparison operator< : fist sorts min by Y,X values then max extremity More...
int | cmp (Box2< T > const &p) const
| comparison function : fist sorts min by Y,X values then max extremity More...

## Protected Attributes

Vec2< T > | m_pt [2]
| the two extremities More...

## Friends

std::ostream & | operator<< (std::ostream &o, Box2< T > const &f)
| print data in form X0xY0<->X1xY1 More...

## Detailed Description

### template<class T>
class Box2< T >

small class which defines a 2D Box

## Member Typedef Documentation

template<class T>

Box2< T >::Map

map of Box2

## Constructor & Destructor Documentation

template<class T>

Box2< T >::Box2 | ( | Vec2< T > | minPt = `Vec2<T>()`,
|  | Vec2< T > | maxPt = `Vec2<T>()`
| ) |  |

inline

constructor

template<class T>
template<class U >

Box2< T >::Box2 | ( | Box2< U > const & | p | ) |

inline

generic constructor

## Member Function Documentation

template<class T>

Vec2<T> Box2< T >::center | ( |  | ) | const

inline

the box center

Referenced by HMWJGraph::sendBasicGraph(), HMWKGraph::sendBasicGraph(), and CWGraph::sendBasicPicture().

template<class T>

int Box2< T >::cmp | ( | Box2< T > const & | p | ) | const

inline

comparison function : fist sorts min by Y,X values then max extremity

Referenced by MWAWPict::cmp(), MWAWPictArc::cmp(), Box2< int >::operator!=(), Box2< T >::PosSizeLt::operator()(), Box2< int >::operator<(), and Box2< int >::operator==().

template<class T>

void Box2< T >::extend | ( | T | val | ) |

inline

extends the bdbox by (val, val) keeping the center

Referenced by MWAWPict::getBdBox(), and MSKGraphInternal::Zone::getLocalBox().

template<class T>

Vec2<T> const& Box2< T >::max | ( |  | ) | const

inline

the maximum 2D point (in x and in y)

Referenced by MWProStructuresInternal::Cell::Cell(), MSKGraphInternal::BasicForm::getBinaryData(), MWAWTableInternal::Compare::Point::getPos(), NSText::sendText(), and WNTextInternal::TableData::updateCell().

template<class T>

Vec2<T>& Box2< T >::max | ( |  | ) |

inline

the maximum 2D point (in x and in y)

template<class T>

Vec2<T> const& Box2< T >::min | ( |  | ) | const

inline

the minimum 2D point (in x and in y)

Referenced by MWProStructuresInternal::Cell::Cell(), MSKGraphInternal::BasicForm::getBinaryData(), MSKGraphInternal::Zone::getLocalBox(), MWAWTableInternal::Compare::Point::getPos(), MWProStructuresInternal::Block::getPosition(), MSKGraphInternal::Zone::getPosition(), MSK3Parser::readGroupHeaderInfo(), NSGraph::sendPageGraphics(), NSGraph::sendPicture(), MSWParser::sendPicture(), NSText::sendText(), and WNTextInternal::TableData::updateCell().

template<class T>

Vec2<T>& Box2< T >::min | ( |  | ) |

inline

the minimum 2D point (in x and in y)

template<class T>

bool Box2< T >::operator!= | ( | Box2< T > const & | p | ) | const

inline

comparison operator!=

template<class T>

bool Box2< T >::operator< | ( | Box2< T > const & | p | ) | const

inline

comparison operator< : fist sorts min by Y,X values then max extremity

template<class T>

bool Box2< T >::operator== | ( | Box2< T > const & | p | ) | const

inline

comparison operator==

template<class T>

Vec2<T> const& Box2< T >::operator[] | ( | int | c | ) | const

inline

the two extremum points which defined the box

Parameters

  c | value 0 means the minimum
  c | value 1 means the maximum

template<class T>

void Box2< T >::resizeFromCenter | ( | Vec2< T > const & | sz | ) |

inline

resize the box keeping the center

template<class T>

void Box2< T >::resizeFromMax | ( | Vec2< T > const & | sz | ) |

inline

resize the box keeping the maximum

template<class T>

void Box2< T >::resizeFromMin | ( | Vec2< T > const & | sz | ) |

inline

resize the box keeping the minimum

template<class T>
template<class U >

void Box2< T >::scale | ( | U | factor | ) |

inline

scales all points of the box by factor

template<class T>

void Box2< T >::set | ( | Vec2< T > const & | x,
|  | Vec2< T > const & | y
| ) |  |

inline

resets the data to minimum x and maximum y

Referenced by MWAWPictMac::checkOrGet(), libmwaw_applepict1::Region::read(), and libmwaw_applepict1::OpCode::readRect().

template<class T>

void Box2< T >::setMax | ( | Vec2< T > const & | y | ) |

inline

resets the maximum point

Referenced by MWAWTable::sendExtraLines().

template<class T>

void Box2< T >::setMin | ( | Vec2< T > const & | x | ) |

inline

resets the minimum point

Referenced by MWAWTable::sendExtraLines().

template<class T>

Vec2<T> Box2< T >::size | ( |  | ) | const

inline

the box size

Referenced by MWAWPictMac::checkOrGet(), MCDParser::createZones(), MWAWPictData::get(), MSKGraphInternal::BasicForm::getBinaryData(), MSKGraphInternal::Zone::getLocalBox(), GWGraphInternal::FrameBasic::getPicture(), MWProStructuresInternal::Block::getPosition(), MSKGraphInternal::Zone::getPosition(), MWProStructuresInternal::Block::getRelativeYPos(), MWAWTableInternal::Compare::Point::getSize(), MWAWTableInternal::Compare::operator()(), NSTextInternal::operator<<(), MRWParserInternal::operator<<(), operator<<(), MSKGraphInternal::BasicForm::print(), libmwaw_applepict1::Bitmap::read(), libmwaw_applepict1::Pixmap::read(), libmwaw_applepict1::Bitmap::readBitmapData(), MWParser::readGraphic(), WPParser::readGraphic(), MSK3Parser::readGroupHeaderInfo(), NSParser::readPageLimit(), libmwaw_applepict1::Pixmap::readPixmapData(), libmwaw_applepict1::Bitmap::saveBitmap(), libmwaw_applepict1::Pixmap::savePixmap(), HMWJGraph::sendBasicGraph(), HMWKGraph::sendBasicGraph(), CWGraph::sendBasicPicture(), CWGraph::sendBitmap(), HMWJGraph::sendComment(), MWAWTable::sendExtraLines(), HMWJGraph::sendFrame(), HMWKGraph::sendFrame(), ACText::sendGraphic(), FWGraph::sendGraphic(), NSGraph::sendPageGraphics(), HMWJGraph::sendPageGraphics(), HMWKGraph::sendPageGraphics(), LWGraph::sendPICT(), MCDParser::sendPicture(), EDParser::sendPicture(), NSGraph::sendPicture(), TTParser::sendPicture(), DMParser::sendPicture(), WNParser::sendPicture(), MSWParser::sendPicture(), CWGraph::sendPicture(), HMWJGraph::sendPictureFrame(), HMWKGraph::sendPictureFrame(), FWGraph::sendSideBar(), NSText::sendText(), HMWJGraph::sendTextbox(), HMWKGraph::sendTextBox(), CWGraph::sendZone(), MWAWPictBasic::startODG(), and CWGraph::updateInformation().

## Friends And Related Function Documentation

template<class T>

std::ostream& operator<< | ( | std::ostream & | o,
|  | Box2< T > const & | f
| ) |  |

friend

print data in form X0xY0<->X1xY1

## Member Data Documentation

template<class T>

Vec2<T> Box2< T >::m_pt[2]

protected

the two extremities

Referenced by Box2< int >::Box2(), Box2< int >::center(), Box2< int >::cmp(), Box2< int >::extend(), Box2< int >::max(), Box2< int >::min(), Box2< int >::operator[](), Box2< int >::resizeFromCenter(), Box2< int >::resizeFromMax(), Box2< int >::resizeFromMin(), Box2< int >::scale(), Box2< int >::set(), Box2< int >::setMax(), Box2< int >::setMin(), and Box2< int >::size().

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

- libmwaw_internal.hxx