Files
Include/EGkCalcPocketing.h
T
Riccardo Elitropi 65b3fe80d1 Include :
- in CalcPocketing, aggiunto parametro temporaneo di Smusso.
2024-08-06 15:07:06 +02:00

49 lines
1.9 KiB
C

//----------------------------------------------------------------------------
// EgalTech 2023-2023
//----------------------------------------------------------------------------
// File : EGkCalcPocketing.h Data : 16.11.23 Versione : 2.5j1
// Contenuto : Calcolo dei percorsi elementari di pocketing.
//
//
//
// Modifiche : 16.11.23 RE Creazione modulo.
//
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGkCurveComposite.h"
#include "/EgtDev/Include/EGkSurfFlatRegion.h"
//----------------------- Macro per import/export ----------------------------
#undef EGK_EXPORT
#if defined( I_AM_EGK) // da definirsi solo nella DLL
#define EGK_EXPORT __declspec( dllexport)
#else
#define EGK_EXPORT __declspec( dllimport)
#endif
//-----------------------------------------------------------------------------
EGK_EXPORT bool CalcPocketing( const ISurfFlatRegion* pSfr, double dRad, double dRadOffs, double dStep,
double dAngle, int nType, bool bSmooth, bool bInvert, bool bAvoidOpt,
bool bAllowZigZagOneWayBorders, const ISurfFlatRegion* pSfrLimit, ICRVCOMPOPOVECTOR& vCrv) ;
EGK_EXPORT bool CalcZigZagInfill( const ISurfFlatRegion* pSfr, double dStep, bool bSmooth, bool bRemoveOverlapLink,
ICRVCOMPOPOVECTOR& vCrvCompoRes) ;
//-----------------------------------------------------------------------------
enum { POCKET_ZIGZAG = 0,
POCKET_ONEWAY = 1,
POCKET_SPIRALIN = 2,
POCKET_SPIRALOUT = 3,
POCKET_CONFORMAL_ZIGZAG = 4} ;
enum { TEMP_PROP_SMOOTH = -2,
TEMP_PROP_INVALID = -1,
TEMP_PROP_CLOSE_EDGE = 0,
TEMP_PROP_OPEN_EDGE = 1,
TEMP_PROP_OUT_START = 2,
TEMP_PROP_SINGLE_CURVE = 3,
TEMP_PROP_OPT_TRAPEZOID = 4,
TEMP_PROP_BORDER_CURVE = 5} ;