LibreOffice Module basegfx (master) 1
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
basegfx::utils::ImplB2DClipState Class Reference
Collaboration diagram for basegfx::utils::ImplB2DClipState:
[legend]

Public Types

enum  Operation {
  UNION ,
  INTERSECT ,
  XOR ,
  SUBTRACT
}
 

Public Member Functions

 ImplB2DClipState ()
 
 ImplB2DClipState (B2DPolyPolygon aPoly)
 
bool isCleared () const
 
bool isNullClipPoly () const
 
bool isNull () const
 
void makeNull ()
 
bool operator== (const ImplB2DClipState &rRHS) const
 
void addRange (const B2DRange &rRange, Operation eOp)
 
void addPolyPolygon (const B2DPolyPolygon &aPoly, Operation eOp)
 
void unionRange (const B2DRange &rRange)
 
void unionPolyPolygon (const B2DPolyPolygon &rPolyPoly)
 
void intersectRange (const B2DRange &rRange)
 
void intersectPolyPolygon (const B2DPolyPolygon &rPolyPoly)
 
void subtractRange (const B2DRange &rRange)
 
void subtractPolyPolygon (const B2DPolyPolygon &rPolyPoly)
 
void xorRange (const B2DRange &rRange)
 
void xorPolyPolygon (const B2DPolyPolygon &rPolyPoly)
 
void transform (const basegfx::B2DHomMatrix &rTranslate)
 
B2DPolyPolygon const & getClipPoly () const
 

Private Member Functions

void commitPendingPolygons () const
 
void commitPendingRanges () const
 

Private Attributes

B2DPolyPolygon maPendingPolygons
 
B2DPolyRange maPendingRanges
 
B2DPolyPolygon maClipPoly
 
Operation mePendingOps
 

Detailed Description

Definition at line 34 of file b2dclipstate.cxx.

Member Enumeration Documentation

◆ Operation

Enumerator
UNION 
INTERSECT 
XOR 
SUBTRACT 

Definition at line 37 of file b2dclipstate.cxx.

Constructor & Destructor Documentation

◆ ImplB2DClipState() [1/2]

basegfx::utils::ImplB2DClipState::ImplB2DClipState ( )
inline

Definition at line 39 of file b2dclipstate.cxx.

◆ ImplB2DClipState() [2/2]

basegfx::utils::ImplB2DClipState::ImplB2DClipState ( B2DPolyPolygon  aPoly)
inlineexplicit

Definition at line 43 of file b2dclipstate.cxx.

Member Function Documentation

◆ addPolyPolygon()

void basegfx::utils::ImplB2DClipState::addPolyPolygon ( const B2DPolyPolygon aPoly,
Operation  eOp 
)
inline

◆ addRange()

void basegfx::utils::ImplB2DClipState::addRange ( const B2DRange rRange,
Operation  eOp 
)
inline

◆ commitPendingPolygons()

void basegfx::utils::ImplB2DClipState::commitPendingPolygons ( ) const
inlineprivate

◆ commitPendingRanges()

void basegfx::utils::ImplB2DClipState::commitPendingRanges ( ) const
inlineprivate

◆ getClipPoly()

B2DPolyPolygon const & basegfx::utils::ImplB2DClipState::getClipPoly ( ) const
inline

Definition at line 175 of file b2dclipstate.cxx.

References commitPendingPolygons(), commitPendingRanges(), and maClipPoly.

◆ intersectPolyPolygon()

void basegfx::utils::ImplB2DClipState::intersectPolyPolygon ( const B2DPolyPolygon rPolyPoly)
inline

Definition at line 134 of file b2dclipstate.cxx.

References addPolyPolygon(), INTERSECT, and isNull().

◆ intersectRange()

void basegfx::utils::ImplB2DClipState::intersectRange ( const B2DRange rRange)
inline

Definition at line 126 of file b2dclipstate.cxx.

References addRange(), INTERSECT, and isNull().

◆ isCleared()

bool basegfx::utils::ImplB2DClipState::isCleared ( ) const
inline

◆ isNull()

bool basegfx::utils::ImplB2DClipState::isNull ( ) const
inline

◆ isNullClipPoly()

bool basegfx::utils::ImplB2DClipState::isNullClipPoly ( ) const
inline

◆ makeNull()

void basegfx::utils::ImplB2DClipState::makeNull ( )
inline

◆ operator==()

bool basegfx::utils::ImplB2DClipState::operator== ( const ImplB2DClipState rRHS) const
inline

Definition at line 77 of file b2dclipstate.cxx.

References maClipPoly, maPendingPolygons, maPendingRanges, and mePendingOps.

◆ subtractPolyPolygon()

void basegfx::utils::ImplB2DClipState::subtractPolyPolygon ( const B2DPolyPolygon rPolyPoly)
inline

Definition at line 150 of file b2dclipstate.cxx.

References addPolyPolygon(), isNull(), and SUBTRACT.

◆ subtractRange()

void basegfx::utils::ImplB2DClipState::subtractRange ( const B2DRange rRange)
inline

Definition at line 142 of file b2dclipstate.cxx.

References addRange(), isNull(), and SUBTRACT.

◆ transform()

void basegfx::utils::ImplB2DClipState::transform ( const basegfx::B2DHomMatrix rTranslate)
inline

◆ unionPolyPolygon()

void basegfx::utils::ImplB2DClipState::unionPolyPolygon ( const B2DPolyPolygon rPolyPoly)
inline

Definition at line 118 of file b2dclipstate.cxx.

References addPolyPolygon(), isCleared(), and UNION.

◆ unionRange()

void basegfx::utils::ImplB2DClipState::unionRange ( const B2DRange rRange)
inline

Definition at line 110 of file b2dclipstate.cxx.

References addRange(), isCleared(), and UNION.

◆ xorPolyPolygon()

void basegfx::utils::ImplB2DClipState::xorPolyPolygon ( const B2DPolyPolygon rPolyPoly)
inline

Definition at line 163 of file b2dclipstate.cxx.

References addPolyPolygon(), and XOR.

◆ xorRange()

void basegfx::utils::ImplB2DClipState::xorRange ( const B2DRange rRange)
inline

Definition at line 158 of file b2dclipstate.cxx.

References addRange(), and XOR.

Member Data Documentation

◆ maClipPoly

B2DPolyPolygon basegfx::utils::ImplB2DClipState::maClipPoly
mutableprivate

◆ maPendingPolygons

B2DPolyPolygon basegfx::utils::ImplB2DClipState::maPendingPolygons
mutableprivate

◆ maPendingRanges

B2DPolyRange basegfx::utils::ImplB2DClipState::maPendingRanges
mutableprivate

◆ mePendingOps

Operation basegfx::utils::ImplB2DClipState::mePendingOps
mutableprivate

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