Include :
- esposte funzioni per l'offset3d. - spostate struct e enum nell'header.
This commit is contained in:
@@ -11,9 +11,13 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkFrame3d.h"
|
||||
#include "/EgtDev/Include/EGkPoint3d.h"
|
||||
#include "/EgtDev/Include/EGkVector3d.h"
|
||||
#include "/EgtDev/Include/EGkPolyLine.h"
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
#include "/EgtDev/Include/EGkCurveComposite.h"
|
||||
#include "/EgtDev/Include/EgtPointerOwner.h"
|
||||
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
@@ -24,6 +28,53 @@
|
||||
#define EGK_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
struct OffsetSegm {
|
||||
PtrOwner<ICurve> pCrv ;
|
||||
int nFlag ; // OffsetCurve3d::AngType
|
||||
int nParent ;
|
||||
OffsetSegm( ICurve* _pCrv, int _nFlag, int _nParent) :
|
||||
nFlag( _nFlag), nParent( _nParent) { pCrv.Set( _pCrv); } ;
|
||||
} ;
|
||||
|
||||
typedef std::vector<OffsetSegm> OFFSETSEGVEC ;
|
||||
|
||||
struct EditCrvInfo {
|
||||
enum EditFlag {
|
||||
NOEDIT = 0,
|
||||
DEL = 1,
|
||||
EDIT = 2
|
||||
};
|
||||
int nId = -1 ;
|
||||
int nFlag = 0 ;
|
||||
Point3d ptStart = P_INVALID ;
|
||||
Point3d ptEnd = P_INVALID ;
|
||||
EditCrvInfo( int _nId, int _nFlag) : nId( _nId), nFlag( _nFlag) { ;}
|
||||
EditCrvInfo( int _nId, int _nFlag, const Point3d& _ptStart, const Point3d& _ptEnd) :
|
||||
nId( _nId), nFlag( _nFlag), ptStart( _ptStart), ptEnd( _ptEnd) { ;}
|
||||
};
|
||||
|
||||
typedef std::vector<EditCrvInfo> EDITCRVINFOVEC ;
|
||||
|
||||
struct Cyl {
|
||||
Cyl( void): frCyl( GLOB_FRM), dH( 0.), dRad( 0.) {;} ;
|
||||
Cyl( const Frame3d& _frCyl, double _dH, double _dRad, double _dLinTol) :
|
||||
frCyl( _frCyl), dH( _dH), dRad( _dRad) { ;}
|
||||
Cyl( const Point3d& _ptBase, const Vector3d& vtZ, double _dH, double _dRad, double _dLinTol) :
|
||||
dH( _dH), dRad( _dRad){
|
||||
frCyl.Set( _ptBase, vtZ); }
|
||||
public :
|
||||
Frame3d frCyl ;
|
||||
public:
|
||||
double dH ;
|
||||
double dRad ;
|
||||
};
|
||||
|
||||
typedef std::vector<Cyl> CYLVECT ;
|
||||
|
||||
EGK_EXPORT bool CalcAdjustConcavePartsInPath( const ICurveComposite* pCrv, const OFFSETSEGVEC& vOffsetCrvs, double dRad, EDITCRVINFOVEC& vEditInfo) ;
|
||||
EGK_EXPORT bool IsPointInsideCylinder( const Point3d& ptTest, const Cyl& offCyl, double dLinTol) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
class OffsetCurve3d
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user