Compare commits

...

21 Commits

Author SHA1 Message Date
LorenzoM d73c231820 Virtual milling additivo 2021-10-25 09:27:11 +02:00
LorenzoM d769bc57df Gestione multi-utensile virtual milling 2021-10-20 10:24:44 +02:00
LorenzoM df5d74161f Merge remote-tracking branch 'origin/HEAD' into LorenzoM 2021-10-18 10:48:23 +02:00
DarioS 34b4b82928 Include :
- aggiornati codici di protezione per cambio mese.
2021-10-04 09:01:00 +02:00
DarioS 3223628941 Include :
- correzioni a Triangle3d e Triangle3dEx per funzioni bool che non restituivano il risultato
- a Triangle3d aggiunta funzione GetSqMinHeight (quadrato della minima altezza del triangolo)
- aggiornamento prototipi.
2021-09-26 16:33:54 +02:00
DarioS 8e8709682f Include :
- aggiunte costanti MILL_LI_TG_PERP e MILL_LO_PERP_TG.
2021-09-25 12:51:20 +02:00
DarioS 7178e9715c Include :
- aggiunta costante parametro utensile TPA_CORE (spessore anima di lama).
2021-09-16 12:45:49 +02:00
DarioS 4628b536ba Include :
- aggiornamento prototipi.
2021-09-13 15:52:10 +02:00
LorenzoM 8a031e252f Merge commit 'd1f85278b680ee7d5ef8aca241ab1fa317e071be' into LorenzoM 2021-09-01 17:52:10 +02:00
LorenzoM bb0e351cc4 Merge commit '0d0fccf1d461d6cdbbde7ce6df71066f76e61573' into LorenzoM 2021-08-03 16:32:47 +02:00
LorenzoM d954d264e7 Merge commit '7c182e9d3368160f41d3ded6505c9ed967912ab4' into LorenzoM 2021-07-23 11:09:16 +02:00
LorenzoM de55faf6e4 Aggiunta seconda temp prop 2021-07-21 12:53:58 +02:00
LorenzoM 8d7401f07f Milgiorie varie 2021-07-05 19:00:02 +02:00
LorenzoM 1e988cf77c Merge commit '10309c05287be601201832247f105c6cd4cacc45' into LorenzoM 2021-06-30 11:19:29 +02:00
LorenzoM c2e0d3ce14 Spostati prototipi di funz in EGkPolyLine.h 2021-06-30 11:17:00 +02:00
LorenzoM bd2cb827e9 Merge remote-tracking branch 'origin/HEAD' into LorenzoM 2021-06-23 16:30:35 +02:00
LorenzoM 53e5fcc269 Spostate in PolyLine funzioni ad esse inerenti 2021-06-23 16:29:58 +02:00
LorenzoM 8ad32287b4 Merge remote-tracking branch 'origin/master' into LorenzoM 2021-05-14 17:49:06 +02:00
LorenzoM 300665ea03 Aggiunta creazione SurfFlatRegion Da PolyLineVector 2021-05-14 10:16:37 +02:00
LorenzoM 621221b24e Correzione casi intersezione triangolo triangolo 2021-05-14 10:15:50 +02:00
LorenzoM 6b8f97230d Fix path 2021-05-14 10:14:38 +02:00
18 changed files with 97 additions and 44 deletions
+1 -1
View File
@@ -12,7 +12,7 @@
#pragma once
#include "EgtDev/Include/EGkSurfTriMesh.h"
#include "/EgtDev/Include/EGkSurfTriMesh.h"
//----------------------- Macro per import/export ----------------------------
#undef EGK_EXPORT
+2 -2
View File
@@ -12,8 +12,8 @@
#pragma once
#include "EgtDev/Include/EGkFrame3d.h"
#include "EgtDev/Include/EGkSurfTriMesh.h"
#include "/EgtDev/Include/EGkFrame3d.h"
#include "/EgtDev/Include/EGkSurfTriMesh.h"
//----------------------- Macro per import/export ----------------------------
#undef EGK_EXPORT
+2 -2
View File
@@ -58,8 +58,8 @@ class __declspec( novtable) ICurveComposite : public ICurve
virtual bool IsAPoint( void) const = 0 ;
virtual bool IsALine( double dLinTol, Point3d& ptStart, Point3d& ptEnd) const = 0 ;
virtual bool IsACircle( double dLinTol, Point3d& ptCen, Vector3d& vtN, double& dRad, bool& bCCW) const = 0 ;
virtual bool SetCurveTempProp( int nCrv, int nProp, int nPropInd = 0) = 0 ;
virtual bool GetCurveTempProp( int nCrv, int& nProp, int nPropInd = 0) const = 0 ;
virtual bool SetCurveTempProp( int nCrv, int nProp, int nPropNum = 0) = 0 ;
virtual bool GetCurveTempProp( int nCrv, int& nProp, int nPropNum = 0) const = 0 ;
} ;
//-----------------------------------------------------------------------------
+2 -2
View File
@@ -54,8 +54,8 @@ class __declspec( novtable) IGeoObj
virtual void SetObjGraphics( IObjGraphics* pOGr) = 0 ;
virtual IObjGraphics* GetObjGraphics( void) = 0 ;
virtual const IObjGraphics* GetObjGraphics( void) const = 0 ;
virtual void SetTempProp( int nProp, int nPropInd = 0) = 0 ;
virtual int GetTempProp( int nPropInd = 0) const = 0 ;
virtual void SetTempProp( int nProp, int nPropNum = 0) = 0 ;
virtual int GetTempProp( int nPropNum = 0) const = 0 ;
} ;
//-----------------------------------------------------------------------------
+2 -2
View File
@@ -13,8 +13,8 @@
#pragma once
#include "EgtDev/Include/EGkBBox3d.h"
#include "EgtDev/Include/EgtNumCollection.h"
#include "/EgtDev/Include/EGkBBox3d.h"
#include "/EgtDev/Include/EgtNumCollection.h"
#include <unordered_map>
//----------------------- Macro per import/export ----------------------------
+2 -2
View File
@@ -13,8 +13,8 @@
#pragma once
#include "EgtDev/Include/EGkBBox3d.h"
#include "EgtDev/Include/EgtNumCollection.h"
#include "/EgtDev/Include/EGkBBox3d.h"
#include "/EgtDev/Include/EgtNumCollection.h"
#include <unordered_map>
//----------------------- Macro per import/export ----------------------------
+1 -1
View File
@@ -32,7 +32,7 @@ EGK_EXPORT int IntersTriaTria( const Triangle3d& trTria1, const Triangle3d& trTr
//-----------------------------------------------------------------------------
// Tipo di intersezione triangolo-triangolo
enum IntTriaTriaType { ITTT_NO = 0, // non c'è intersezione
enum IntTriaTriaType { ITTT_NO = 0, // non c' intersezione
ITTT_OVERLAPS = 1, // i triangoli si sovrappongono (i triangoli del poligono sono in vTria)
ITTT_VERT_VERT = 2, // intersezione coppia di vertici
ITTT_VERT_EDGE = 3, // vertice del primo su lato del secondo
+22
View File
@@ -99,6 +99,8 @@ class PolyLine
{ return GetPrevULine( nullptr, &ptIni, nullptr, &ptFin) ; }
EGK_EXPORT PNTULIST& GetUPointList( void)
{ return m_lUPoints ; }
EGK_EXPORT const PNTULIST& GetUPointList( void) const
{ return m_lUPoints ; }
EGK_EXPORT bool IsFlat( int& nRank, Point3d& ptCen, Vector3d& vtDir, double dToler = EPS_SMALL) const ;
EGK_EXPORT bool IsFlat( Plane3d& plPlane, double dToler = EPS_SMALL) const ;
EGK_EXPORT bool IsClosedAndFlat( Plane3d& plPlane, double& dArea, double dToler = EPS_SMALL) const ;
@@ -116,6 +118,13 @@ class PolyLine
EGK_EXPORT bool GetConvexHullXY( PNTVECTOR& vConvHull) const ;
EGK_EXPORT bool GetMinAreaRectangleXY( Point3d& ptCen, Vector3d& vtAx, double& dLen, double& dHeight) const ;
EGK_EXPORT bool Trim( const Plane3d& plPlane, bool bInVsOut = true) ;
EGK_EXPORT bool ChangePolyLineStart( const Point3d& ptNewStart, double dTol = EPS_SMALL) ;
// nSegNum 0-based
EGK_EXPORT bool PointPositionOnPolyLine( const Point3d& ptPoint, int& nSegNum, double& dParOnSeg, double dTol = EPS_SMALL) const ;
EGK_EXPORT bool IsPointInsidePolyLine( const Point3d& ptP) const ;
EGK_EXPORT bool DistPointPolyLine( const Point3d& ptP, double& dPointPolyLineDist) const ;
EGK_EXPORT bool SplitPolyLineAtPoint( const Point3d& ptPoint, PolyLine& Loop1, PolyLine& Loop2, double dTol = EPS_SMALL) const ;
EGK_EXPORT bool AddPolyLineToPolyLine( PolyLine& PolyToAdd, double dTol = EPS_SMALL) ;
private :
bool MyChangeStart( int nPos) ;
@@ -132,3 +141,16 @@ class PolyLine
// Raccolte di PolyLine
typedef std::vector<PolyLine> POLYLINEVECTOR ; // vettore di PolyLine
typedef std::list<PolyLine> POLYLINELIST ; // lista di PolyLine
//----------------------------------------------------------------------------
struct PositionOnPolyLine {
int nIndexInVec ;
int nSegNum ;
double dParOnSeg ;
PositionOnPolyLine( int nIndex, int nSeg, double dPar) {
nIndexInVec = nIndex ;
nSegNum = nSeg ;
dParOnSeg = dPar ;
}
} ;
+10 -3
View File
@@ -23,13 +23,20 @@
#define EGK_EXPORT __declspec( dllimport)
#endif
class Triangle3d ;
//----------------------------------------------------------------------------
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionRectangle( double dWidth, double dLen) ;
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionStadium( double dWidth, double dLen) ;
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionDisk( double dRadius) ;
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromPolyLine( const PolyLine& ContourPolyLine) ;
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromPolyLineVector( const POLYLINEVECTOR& vContoursPolyLineVec) ;
// la curva ingrassata non deve autointersecarsi
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromFatCurve( ICurve* pCrv, double dRadius,
bool bSquareEnds, bool bSquareMids) ;
// NB : la curva ingrassata non deve autointersecarsi
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromTriangle( const Triangle3d& Tria) ;
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromPolyLine( const PolyLine& ContourPolyLine) ;
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromPolyLineVector( const POLYLINEVECTOR& vContoursPolyLineVec) ;
//----------------------------------------------------------------------------
@@ -52,9 +59,9 @@ class SurfFlatRegionByContours
typedef std::vector<INDAREA> INDAREAVECTOR ; // vettore di coppie indice, area
private :
bool m_bAllowedMore ; // ammesse più regioni
bool m_bAllowedMultiChunk ; // ammesse regioni con più componenti disgiunti (chunk)
bool m_bAllowedMore ; // ammesse pi regioni
bool m_bAllowedMultiChunk ; // ammesse regioni con pi componenti disgiunti (chunk)
bool m_bFirst ; // flag per prima superficie non ancora richiesta
ICURVEPVECTOR m_vpCrv ; // vettore di puntatori a curve, l'oggetto ne è possessore
ICURVEPVECTOR m_vpCrv ; // vettore di puntatori a curve, l'oggetto ne possessore
INDAREAVECTOR m_vArea ; // vettore indice + area di ogni curva
} ;
+3 -3
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2014-2020
// EgalTech 2014-2021
//----------------------------------------------------------------------------
// File : EgkSurfTriMesh.h Data : 15.10.20 Versione : 2.2j2
// File : EgkSurfTriMesh.h Data : 26.09.21 Versione : 2.3i2
// Contenuto : Dichiarazione della interfaccia ISurfTriMesh.
//
//
@@ -78,7 +78,7 @@ class __declspec( novtable) ISurfTriMesh : public ISurf
virtual bool GetTriangleBoundaryEdges( int nId, TriFlags3d& TFlags) const = 0 ;
virtual bool GetTriangleSmoothNormals( int nId, TriNormals3d& TNrms) const = 0 ;
virtual bool GetLoops( POLYLINEVECTOR& vPL) const = 0 ;
virtual bool GetSilhouette( const Vector3d& vtDir, POLYLINEVECTOR& vPL) const = 0 ;
virtual bool GetSilhouette( const Vector3d& vtDir, double dTol, POLYLINEVECTOR& vPL) const = 0 ;
virtual int GetFacetCount( void) const = 0 ;
virtual int GetFacetSize( void) const = 0 ;
virtual int GetFacetFromTria( int nT) const = 0 ;
+28 -18
View File
@@ -97,28 +97,28 @@ class Triangle3d
return Rotate( ptAx, vtAx, cos( dAngRad), sin( dAngRad)) ;
}
bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dCosAng, double dSinAng)
{ m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
m_vtN.Rotate( vtAx, dCosAng, dSinAng) ;
{ return ( m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
m_vtN.Rotate( vtAx, dCosAng, dSinAng)) ;
}
bool Scale( const Frame3d& frRef, double dCoeffX, double dCoeffY, double dCoeffZ)
{ m_ptP[0].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
m_ptP[1].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
m_ptP[2].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
Validate( true) ;
return Validate( true) ;
}
bool Mirror( const Point3d& ptOn, const Vector3d& vtNorm)
{ m_ptP[0].Mirror( ptOn, vtNorm) ;
m_ptP[1].Mirror( ptOn, vtNorm) ;
m_ptP[2].Mirror( ptOn, vtNorm) ;
Validate( true) ;
return Validate( true) ;
}
bool Shear( const Point3d& ptOn, const Vector3d& vtNorm, const Vector3d& vtDir, double dCoeff)
{ m_ptP[0].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
m_ptP[1].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
m_ptP[2].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
Validate( true) ;
return Validate( true) ;
}
bool ToGlob( const Frame3d& frRef)
{ return ( m_ptP[0].ToGlob( frRef) && m_ptP[1].ToGlob( frRef) && m_ptP[2].ToGlob( frRef) && m_vtN.ToGlob( frRef)) ; }
@@ -172,6 +172,15 @@ class Triangle3d
else
return ( std::max( dSqDistA, std::max( dSqDistB, dSqDistC)) / dTwoArea) ;
}
double GetSqMinHeight( void) const
{ Vector3d vtV1 = m_ptP[1] - m_ptP[0] ;
Vector3d vtV2 = m_ptP[2] - m_ptP[1] ;
Vector3d vtN = vtV1 ^ vtV2 ;
double dSqN = vtN.SqLen() ;
if ( dSqN < SQ_EPS_ZERO)
return 0 ;
return ( dSqN / std::max( { vtV1.SqLen(), vtV2.SqLen(), ( vtV1 + vtV2).SqLen()})) ;
}
protected :
Point3d m_ptP[3] ;
@@ -277,20 +286,21 @@ class Triangle3dEx : public Triangle3d
{ double dAngRad = dAngDeg * DEGTORAD ;
return Rotate( ptAx, vtAx, cos( dAngRad), sin( dAngRad)) ; }
bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dCosAng, double dSinAng)
{ m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
m_vtN.Rotate( vtAx, dCosAng, dSinAng) ;
for ( int i = 0 ; i < 3 ; ++ i)
m_triN.vtN[i].Rotate( vtAx, dCosAng, dSinAng) ;
{ return ( m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
m_vtN.Rotate( vtAx, dCosAng, dSinAng) &&
m_triN.vtN[0].Rotate( vtAx, dCosAng, dSinAng) &&
m_triN.vtN[1].Rotate( vtAx, dCosAng, dSinAng) &&
m_triN.vtN[2].Rotate( vtAx, dCosAng, dSinAng)) ;
}
bool Scale( const Frame3d& frRef, double dCoeffX, double dCoeffY, double dCoeffZ)
{ m_ptP[0].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
m_ptP[1].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
m_ptP[2].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
for ( int i = 0 ; i < 3 ; ++ i)
m_triN.vtN[i] = V_NULL ;
Validate( true) ;
m_triN.vtN[i] = V_NULL ;
return Validate( true) ;
}
bool Mirror( const Point3d& ptOn, const Vector3d& vtNorm)
{ m_ptP[0].Mirror( ptOn, vtNorm) ;
@@ -298,15 +308,15 @@ class Triangle3dEx : public Triangle3d
m_ptP[2].Mirror( ptOn, vtNorm) ;
for ( int i = 0 ; i < 3 ; ++ i)
m_triN.vtN[i].Mirror( vtNorm) ;
Validate( true) ;
return Validate( true) ;
}
bool Shear( const Point3d& ptOn, const Vector3d& vtNorm, const Vector3d& vtDir, double dCoeff)
{ m_ptP[0].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
m_ptP[1].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
m_ptP[2].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
for ( int i = 0 ; i < 3 ; ++ i)
m_triN.vtN[i] = V_NULL ;
Validate( true) ;
m_triN.vtN[i] = V_NULL ;
return Validate( true) ;
}
bool ToGlob( const Frame3d& frRef)
{ return ( m_ptP[0].ToGlob( frRef) && m_ptP[1].ToGlob( frRef) && m_ptP[2].ToGlob( frRef) && m_vtN.ToGlob( frRef) &&
+6
View File
@@ -55,6 +55,7 @@ class __declspec( novtable) IVolZmap : public IGeoObj
virtual bool Create( const Point3d& ptO, double dDimX, double dDimY, double dDimZ, double dPrec, bool bTriDex) = 0 ;
virtual bool CreateFromFlatRegion( const ISurfFlatRegion& Surf, double dDimZ, double dPrec, bool bTriDex) = 0 ;
virtual bool CreateFromTriMesh( const ISurfTriMesh& Surf, double dPrec, bool bTriDex) = 0 ;
virtual bool CreateEmptyMap( const Point3d& ptO, double dLengthX, double dLengthY, double dLengthZ, double dStep, bool bTriDex) = 0 ;
virtual int GetBlockCount( void) const = 0 ;
virtual int GetBlockUpdatingCounter( int nBlock) const = 0 ;
virtual bool GetBlockTriangles( int nBlock, TRIA3DEXVECTOR& vTria) const = 0 ;
@@ -72,6 +73,11 @@ class __declspec( novtable) IVolZmap : public IGeoObj
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 SetCurrTool( int nCurrTool) = 0 ;
virtual int GetToolCount( void) const = 0 ;
virtual int GetCurrTool( void) const = 0 ;
virtual bool AddTool( void) = 0 ;
virtual bool ResetAllTools( void) = 0 ;
virtual bool ResetTool( 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 ;
+2 -1
View File
@@ -563,7 +563,7 @@ EIN_EXPORT BOOL __stdcall EgtSurfTmFacetOppositeSide( int nId, int nFacet, const
EIN_EXPORT BOOL __stdcall EgtSurfTmFacetAdjacencies( int nId, int nFacet, int*& vAdj, int* pnCount) ;
EIN_EXPORT BOOL __stdcall EgtSurfTmFacetsContact( int nId, int nF1, int nF2, int nRefId,
BOOL* pbAdjac, double ptP1[3], double ptP2[3], double* pdAng) ;
EIN_EXPORT int __stdcall EgtGetSurfTmSilhouette( int nId, const double vtDir[3], int nDestGrpId, int nRefType, int* pnCount) ;
EIN_EXPORT int __stdcall EgtGetSurfTmSilhouette( int nId, const double vtDir[3], double dToler, int nDestGrpId, int nRefType, int* pnCount) ;
EIN_EXPORT int __stdcall EgtExtractSurfTmLoops( int nId, int nDestGrpId, int* pnCount) ;
EIN_EXPORT int __stdcall EgtExtractSurfTmFacetLoops( int nId, int nFacet, int nDestGrpId, int* pnCount) ;
EIN_EXPORT int __stdcall EgtCopySurfTmFacet( int nId, int nFacet, int nDestGrpId) ;
@@ -735,6 +735,7 @@ EIN_EXPORT BOOL __stdcall EgtGetTableName( wchar_t*& wsTableName) ;
EIN_EXPORT BOOL __stdcall EgtGetTableRef( int nInd, double ptPos[3]) ;
EIN_EXPORT BOOL __stdcall EgtGetTableArea( int nInd, double ptMin[3], double ptMax[3]) ;
EIN_EXPORT BOOL __stdcall EgtGetTableAreaOffset( int nInd, double ptMinOffs[3], double ptMaxOffs[3]) ;
EIN_EXPORT BOOL __stdcall EgtChangeTable( const wchar_t* wsTable, BOOL bUpdateDisp) ;
EIN_EXPORT BOOL __stdcall EgtShowOnlyTable( BOOL bVal) ;
EIN_EXPORT int __stdcall EgtAddFixture( const wchar_t* wsName, const double ptPos[3], double dAngRotDeg, double dMov) ;
EIN_EXPORT BOOL __stdcall EgtKeepFixture( int nFxtId, int nSouPhase) ;
+1
View File
@@ -106,6 +106,7 @@ class __declspec( novtable) IMachMgr
virtual bool GetTableRef( int nInd, Point3d& ptPos) const = 0 ;
virtual bool GetTableArea( int nInd, BBox3d& b3Area) const = 0 ;
virtual bool GetTableAreaOffset( int nInd, BBox3d& b3Area) const = 0 ;
virtual bool ChangeTable( const std::string& sTable, bool bUpdateDisp) = 0 ;
virtual bool ShowOnlyTable( bool bVal) = 0 ;
virtual int AddFixture( const std::string& sName, const Point3d& ptPos, double dAngRotDeg, double dMov) = 0 ;
virtual bool KeepFixture( int nFxtId, int nSouPhase) = 0 ;
+4 -2
View File
@@ -251,13 +251,15 @@ enum { MILL_LI_NONE = 0,
MILL_LI_TANGENT = 2,
MILL_LI_GLIDE = 3,
MILL_LI_ZIGZAG = 4,
MILL_LI_HELIX = 5} ;
MILL_LI_HELIX = 5,
MILL_LI_TG_PERP = 6} ;
// Tipo di uscita
enum { MILL_LO_NONE = 0,
MILL_LO_LINEAR = 1,
MILL_LO_TANGENT = 2,
MILL_LO_GLIDE = 3,
MILL_LO_AS_LI = 4} ;
MILL_LO_AS_LI = 4,
MILL_LO_PERP_TG = 5} ;
// Tipo lavorazione faccia
enum { MILL_FU_NONE = 0,
MILL_FU_PARAL_DOWN = 1,
+5 -2
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2015-2021
//----------------------------------------------------------------------------
// File : EmkToolConst.h Data : 05.04.21 Versione : 2.3c2
// File : EmkToolConst.h Data : 16.09.21 Versione : 2.3i6
// Contenuto : Costanti degli utensili.
//
//
@@ -9,7 +9,8 @@
// Modifiche : 16.09.15 DS Creazione modulo.
// 03.02.17 DS Agg. chisel.
// 20.09.18 DS Agg. costanti per ToolHolder
// 05.04.21 DS Agg. TPA_LEN2 e TPA_STEMDIAM.
// 05.04.21 DS Agg. TPA_DIST e TPA_STEMDIAM.
// 16.09.21 DS Agg. TPA_CORE.
//
//----------------------------------------------------------------------------
@@ -88,6 +89,7 @@ enum TpaType { TPA_NONE = 0,
TPA_MINFEED = ( TPA_DOU + 17),
TPA_DIST = ( TPA_DOU + 18),
TPA_STEMDIAM = ( TPA_DOU + 19),
TPA_CORE = ( TPA_DOU + 20),
TPA_DRAW = ( TPA_STR + 0),
TPA_HEAD = ( TPA_STR + 1),
TPA_NAME = ( TPA_STR + 2),
@@ -111,6 +113,7 @@ const std::string TSI_THDIAM = "THD" ; // diametro massimo port
const std::string TSI_ACTIVE = "ACTIVE" ; // flag di utensile attivo
const std::string TSI_DIST = "DIST" ; // distanza per sega a catena
const std::string TSI_STEM_DIAM = "D_STEM" ; // diametro effettivo del gambo utensile
const std::string TSI_CORE = "CORE" ; // anima per lama
//----------------------------------------------------------------------------
// Costanti per info in portautensili
+2 -1
View File
@@ -634,7 +634,7 @@ EXE_EXPORT bool ExeSurfTmFacetOppositeSideEx( int nId, int nFacet, const Vector3
Point3d& ptP1, Point3d& ptPm, Point3d& ptP2, Vector3d& vtIn1, Vector3d& vtOut2, double& dLen, double& dWidth) ;
EXE_EXPORT bool ExeSurfTmFacetsContact( int nId, int nF1, int nF2, int nRefId, bool& bAdjac, Point3d& ptP1, Point3d& ptP2, double& dAng) ;
EXE_EXPORT int ExeExtractSurfTmLoops( int nId, int nDestGrpId, int* pnCount) ;
EXE_EXPORT int ExeGetSurfTmSilhouette( int nId, const Vector3d& vtDir, int nDestGrpId, int nRefType, int* pnCount) ;
EXE_EXPORT int ExeGetSurfTmSilhouette( int nId, const Vector3d& vtDir, double dToler, int nDestGrpId, int nRefType, int* pnCount) ;
EXE_EXPORT int ExeExtractSurfTmFacetLoops( int nId, int nFacet, int nDestGrpId, int* pnCount) ;
EXE_EXPORT int ExeCopySurfTmFacet( int nId, int nFacet, int nDestGrpId) ;
EXE_EXPORT bool ExeSurfTmGetFacetBBox( int nId, int nFacet, int nFlag, BBox3d& b3Box) ;
@@ -875,6 +875,7 @@ EXE_EXPORT bool ExeGetTable( std::string& sTable) ;
EXE_EXPORT bool ExeGetTableRef( int nInd, Point3d& ptPos) ;
EXE_EXPORT bool ExeGetTableArea( int nInd, BBox3d& b3Area) ;
EXE_EXPORT bool ExeGetTableAreaOffset( int nInd, BBox3d& b3AreaOffs) ;
EXE_EXPORT bool ExeChangeTable( const std::string& sTable, bool bUpdateDisp) ;
EXE_EXPORT bool ExeShowOnlyTable( bool bVal) ;
EXE_EXPORT int ExeAddFixture( const std::string& sName, const Point3d& ptPos, double dAngRotDeg, double dMov) ;
EXE_EXPORT bool ExeKeepFixture( int nFxtId, int nSouPhase) ;
+2 -2
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2015-2021
//----------------------------------------------------------------------------
// File : EgtKeyCodes.h Data : 06.09.21 Versione : 2.3i1
// File : EgtKeyCodes.h Data : 03.10.21 Versione : 2.3j1
// Contenuto : Costanti per codici di protezione librerie di base.
//
//
@@ -22,7 +22,7 @@
//----------------------------------------------------------------------------
const int KEY_BASELIB_PROD = 207 ;
const int KEY_BASELIB_VER = 2309 ;
const int KEY_BASELIB_VER = 2310 ;
const int KEY_BASELIB_LEV = 1 ;
//----------------------------------------------------------------------------