14 #ifndef __WXBOOLOPER_H__
15 #define __WXBOOLOPER_H__
21 #include "a2dprivate.h"
25 #include "kbool/booleng.h"
60 Bool_Engine* GetBooleanEngine() {
return m_booleng; }
63 void SetLog(
bool OnOff ) { m_booleng->SetLog( OnOff ); }
66 void SetDebug(
bool OnOff ) { m_booleng->SetDebug( OnOff ); }
73 void SetMarge(
double marge ) { m_booleng->SetMarge( marge ); }
74 void SetGrid(
long grid ) { m_booleng->SetGrid( grid ); }
75 void SetDGrid(
double dgrid ) { m_booleng->SetDGrid( dgrid ); }
76 void SetCorrectionAber(
double aber ) { m_booleng->SetCorrectionAber( aber ); }
77 void SetCorrectionFactor(
double aber ) { m_booleng->SetCorrectionFactor( aber ); }
78 void SetMaxlinemerge(
double maxline ) { m_booleng->SetMaxlinemerge( maxline ); }
79 void SetWindingRule(
bool rule ) { m_booleng->SetWindingRule( rule ); }
80 void SetRoundfactor(
double roundfac ) { m_booleng->SetRoundfactor( roundfac ); }
81 void SetSmoothAber(
double aber ) { m_booleng->SetSmoothAber( aber ); }
85 void SetLinkHoles(
bool doLinkHoles ) { m_booleng->SetLinkHoles( doLinkHoles ); }
86 void SetOrientationEntryMode(
bool orientationEntryMode ) { m_booleng->SetOrientationEntryMode( orientationEntryMode ); }
130 bool GetObjectsForSurface(
a2dCanvasObject* booleanobject, GroupType A_or_B );
133 bool GetObjectsSurface(
a2dCanvasObject* booleanobject, GroupType A_or_B );
170 a2dFill m_useFirstChildStyleFill;
172 wxUint16 m_useFirstChildLayer;
174 bool m_firstLevelChild;
176 bool m_resultOnSameLayer;
181 #endif //wxART2D_USE_KBOOL
Base class for all types of strokes, understood by a2dDrawer2D classes.
static const long Boolean_Surface2Polygon
Bool_Engine * m_booleng
the boolean engine
bool m_releaseOrignals
when an object takes part in operation, and this flag is true, the original is removed.
a2dCanvasObjectList m_foundB
objects found for groupB
static const long Boolean_MAKERING
a2dCanvasObjectList m_foundA
objects found for groupA
wxUint16 m_lastdepth
to keep track of levels to do boolean operations
a2dCanvasObject is the base class for Canvas Objects.
void SetReleaseOrignals(bool releaseOrignals)
when an object takes part in operation, and this flag is true, the original is removed.
static const long Boolean_NON
wxUint64 a2dCanvasObjectFlagsMask
mask flags for a2dCanvasObject
void SetClearTarget(bool clearTarget)
clear the target layer before adding result.
static const long Boolean_AND
void SetResultStroke(const a2dStroke &resultStroke)
Set the Result stroke style.
a2dWalker based algorithms
void SetLog(bool OnOff)
log file will be created when set True
static const long Boolean_B_SUB_A
static const long Boolean_A_SUB_B
static const long Boolean_CORRECTION
void SetDebug(bool OnOff)
when set debug information and output will be generated.
void SetResultOnSameLayer(bool resultOnSameLayer)
if set, the result will be placed on same layer as the first object in the operation ...
bool Start(a2dCanvasObject *object)
start at this object
void SetStyleOfFirstChild(bool useStyle)
when set the style of the resulting polygons
bool m_useFirstChildStyle
use first child style or not.
virtual bool WalkTask(wxObject *parent, wxObject *object, a2dWalkEvent event)
called from within a2dCanvasDocument
static const long Boolean_OR
void SetResultFill(const a2dFill &resultFill)
Set the Result fill style.
all headers of the artbase module in one.
void SetLinkHoles(bool doLinkHoles)
walk a document tree and perform boolean opration on primitives.
algorithm to delete a2dCanvasObjects on layers or to move, copy to other layers
a2dCanvasObjectList * ConvertToPolygons(a2dCanvasObject *canvasobject, bool transform)
static const a2dCanvasObjectFlagsMask ALL
void Initialize()
used from constructor
bool m_clearTarget
clear the target layer before adding result.
static const long Boolean_Polygon2Surface
static const long Boolean_EXOR
static const long Boolean_SMOOTHEN