diff --git a/EGkVolZmap.h b/EGkVolZmap.h index f12d1e8..f63d7b4 100644 --- a/EGkVolZmap.h +++ b/EGkVolZmap.h @@ -64,18 +64,27 @@ class __declspec( novtable) IVolZmap : public IGeoObj virtual int GetResolution( void) const = 0 ; virtual bool ChangeResolution( int nDexvoxRatio) = 0 ; virtual bool SetToolTolerances( double dLinTol, double dAngTolDeg = 90) = 0 ; - virtual bool SetStdTool( const std::string& sToolName, double dH, double dR, double dCornR, double dCutterH, int nFlag) = 0 ; + virtual bool SetStdTool( const std::string& sToolName, + double dH, double dR, double dCornR, double dCutterH, int nFlag, bool bFirst) = 0 ; virtual bool SetAdvTool( const std::string& sToolName, - double dH, double dR, double dTipH, double dTipR, double dCornR, double dCutterH, int nFlag) = 0 ; + double dH, double dR, double dTipH, double dTipR, double dCornR, double dCutterH, int nFlag, bool bFirst) = 0 ; virtual bool SetSawTool( const std::string& sToolName, - double dH, double dR, double dThick, double dStemR, double dCornR, int nFlag) = 0 ; - virtual bool SetGenTool( const std::string& sToolName, const ICurveComposite* pToolOutline, int nFlag) = 0 ; - virtual bool SetMortiserTool( const std::string& sToolName, double dH, double dW, double dTh, double dRc, int nFlag) = 0 ; - virtual bool SetChiselTool( const std::string& sToolName, double dH, double dW, double dTh, int nFlag) = 0 ; - virtual bool ResetTool( void) = 0 ; + double dH, double dR, double dThick, double dStemR, double dCornR, int nFlag, bool bFirst) = 0 ; + virtual bool SetGenTool( const std::string& sToolName, + const ICurveComposite* pToolOutline, int nFlag, bool bFirst) = 0 ; + virtual bool SetMortiserTool( const std::string& sToolName, + double dH, double dW, double dTh, double dRc, int nFlag, bool bFirst) = 0 ; + virtual bool SetChiselTool( const std::string& sToolName, + double dH, double dW, double dTh, int nFlag, bool bFirst) = 0 ; + virtual int GetToolCount( void) const = 0 ; + virtual bool SetCurrTool( int nCurrTool) = 0 ; + virtual bool ResetTools( void) = 0 ; virtual const ICurveComposite& GetToolOutline( bool bApprox = false) const = 0 ; - virtual bool MillingStep( const Point3d& ptPs, const Vector3d& vtDs, const Point3d& ptPe, const Vector3d& vtDe) = 0 ; - virtual bool MillingStep( const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs, + virtual bool MillingStep( int nCurrTool, + const Point3d& ptPs, const Vector3d& vtDs, + const Point3d& ptPe, const Vector3d& vtDe) = 0 ; + virtual bool MillingStep( int nCurrTool, + const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs, const Point3d& ptPe, const Vector3d& vtDe, const Vector3d& vtAe) = 0 ; virtual bool GetDepth( const Point3d& ptP, const Vector3d& vtDir, double& dInLength, double& dOutLength, bool bExact) const = 0 ; virtual bool GetLineIntersection( const Point3d& ptP, const Vector3d& vtD, ILZIVECTOR& vIntersInfo) const = 0 ; diff --git a/EXeExecutor.h b/EXeExecutor.h index 84f3be1..9c03deb 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -595,20 +595,20 @@ EXE_EXPORT int ExeExplodeVolume( int nId, int* pnCount) ; EXE_EXPORT bool ExeVolZmapChangeResolution( int nId, int nNewRes) ; EXE_EXPORT bool ExeRemoveVolZmapPart( int nId, int nPart) ; EXE_EXPORT bool ExeVolZmapSetStdTool( const INTVECTOR& vIds, const std::string& sToolName, - double dLen, double dDiam, double dCornR, double dCutterH, int nFlag) ; + double dLen, double dDiam, double dCornR, double dCutterH, int nFlag, bool bFirst) ; EXE_EXPORT bool ExeVolZmapSetAdvTool( const INTVECTOR& vIds, const std::string& sToolName, - double dLen, double dDiam, double dTipLen, double dTipDiam, double dCornR, double dCutterH, int nFlag) ; + double dLen, double dDiam, double dTipLen, double dTipDiam, double dCornR, double dCutterH, int nFlag, bool bFirst) ; EXE_EXPORT bool ExeVolZmapSetSawTool( const INTVECTOR& vIds, const std::string& sToolName, - double dLen, double dDiam, double dThick, double dStemDiam, double dCornR, int nFlag) ; -EXE_EXPORT bool ExeVolZmapSetGenTool( const INTVECTOR& vIds, const std::string& sToolName, int nToolSectId, int nFlag) ; + double dLen, double dDiam, double dThick, double dStemDiam, double dCornR, int nFlag, bool bFirst) ; +EXE_EXPORT bool ExeVolZmapSetGenTool( const INTVECTOR& vIds, const std::string& sToolName, int nToolSectId, int nFlag, bool bFirst) ; EXE_EXPORT bool ExeVolZmapSetMortiserTool( const INTVECTOR& vIds, const std::string& sToolName, - double dLen, double dWidth, double dThick, double dCornR, int nFlag) ; + double dLen, double dWidth, double dThick, double dCornR, int nFlag, bool bFirst) ; EXE_EXPORT bool ExeVolZmapSetChiselTool( const INTVECTOR& vIds, const std::string& sToolName, - double dLen, double dWidth, double dThick, int nFlag) ; -EXE_EXPORT bool ExeVolZmapResetTool( const INTVECTOR& vIds) ; + double dLen, double dWidth, double dThick, int nFlag, bool bFirst) ; +EXE_EXPORT bool ExeVolZmapResetTools( const INTVECTOR& vIds) ; EXE_EXPORT int ExeVolZmapGetToolOutline( int nId, int nDestGrpId, bool bApprox = false) ; EXE_EXPORT bool ExeVolZmapMillingStep( int nId, const Point3d& ptPs, const Vector3d& vtDs, - const Point3d& ptPe, const Vector3d& vtD, int nRefTypee) ; + const Point3d& ptPe, const Vector3d& vtD, int nRefType) ; EXE_EXPORT bool ExeVolZmapMillingStep( int nId, const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs, const Point3d& ptPe, const Vector3d& vtDe, const Vector3d& vtAe, int nRefType) ; EXE_EXPORT bool ExeCutVolZmapPlane( int nId, const Point3d& ptOn, const Vector3d& vtN, int nRefType) ;