Include :
- Aggiunta gestione Offset Thickening per superfici TriMesh - Aggiunta gestione Offset Chamfer ed Extend.
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
//
|
//
|
||||||
// Modifiche : 08.04.14 DS Creazione modulo.
|
// Modifiche : 08.04.14 DS Creazione modulo.
|
||||||
// 25.02.15 DS Agg. PointInPlane*.
|
// 25.02.15 DS Agg. PointInPlane*.
|
||||||
|
// 05.09.25 RE Agg. funzioni di confronto tra due piani
|
||||||
//
|
//
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|
||||||
@@ -154,3 +155,28 @@ PointInPlaneExact( const Point3d& ptP, const Plane3d& plPlane)
|
|||||||
{
|
{
|
||||||
return ( abs( (( ptP - ORIG) * plPlane.GetVersN()) - plPlane.GetDist()) < EPS_ZERO) ;
|
return ( abs( (( ptP - ORIG) * plPlane.GetVersN()) - plPlane.GetDist()) < EPS_ZERO) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
inline bool
|
||||||
|
AreSamePlaneEpsilon( const Plane3d& plPlaneA, const Plane3d& plPlaneB, double dToler)
|
||||||
|
{
|
||||||
|
return ( AreSameVectorEpsilon( plPlaneA.GetVersN(), plPlaneB.GetVersN(), dToler) &&
|
||||||
|
PointInPlaneEpsilon( plPlaneA.GetPoint(), plPlaneB, dToler)) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
inline bool
|
||||||
|
AreSamePlaneApprox( const Plane3d& plPlaneA, const Plane3d& plPlaneB)
|
||||||
|
{
|
||||||
|
return ( AreSameVectorApprox( plPlaneA.GetVersN(), plPlaneB.GetVersN()) &&
|
||||||
|
PointInPlaneApprox( plPlaneA.GetPoint(), plPlaneB)) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
inline bool
|
||||||
|
AreSamePlaneExact( const Plane3d plPlaneA, const Plane3d& plPlaneB)
|
||||||
|
{
|
||||||
|
return ( AreSameVectorExact( plPlaneA.GetVersN(), plPlaneB.GetVersN()) &&
|
||||||
|
PointInPlaneExact( plPlaneA.GetPoint(), plPlaneB)) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
// Costanti per offset
|
// Costanti per offset
|
||||||
static int STMOFF_FILLET = 0 ;
|
static int STMOFF_FILLET = 0 ;
|
||||||
|
static int STMOFF_CHAMFER = 1 ;
|
||||||
static int STMOFF_EXTEND = 2 ;
|
static int STMOFF_EXTEND = 2 ;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -33,8 +33,6 @@ class __declspec( novtable) IVolZmap : public IGeoObj
|
|||||||
virtual bool CreateEmpty( const Point3d& ptO, double dDimX, double dDimY, double dDimZ, double dStep, bool bTriDex) = 0 ;
|
virtual bool CreateEmpty( const Point3d& ptO, double dDimX, double dDimY, double dDimZ, double dStep, bool bTriDex) = 0 ;
|
||||||
virtual bool CreateFromFlatRegion( const ISurfFlatRegion& Surf, double dDimZ, double dStep, bool bTriDex) = 0 ;
|
virtual bool CreateFromFlatRegion( const ISurfFlatRegion& Surf, double dDimZ, double dStep, bool bTriDex) = 0 ;
|
||||||
virtual bool CreateFromTriMesh( const ISurfTriMesh& Surf, double dStep, bool bTriDex, double dExtraBox = 0.) = 0 ;
|
virtual bool CreateFromTriMesh( const ISurfTriMesh& Surf, double dStep, bool bTriDex, double dExtraBox = 0.) = 0 ;
|
||||||
virtual bool CreateFromTriMeshOffset( const CISURFTMPVECTOR& vSurf, double dOffs, double dTol, int nType = STMOFF_FILLET) = 0 ;
|
|
||||||
virtual bool CreateFromTriMeshThickeningOffset( const CISURFTMPVECTOR& vSurf, double dOffs, double dTol, int nType = STMOFF_FILLET) = 0 ;
|
|
||||||
virtual int GetBlockCount( void) const = 0 ;
|
virtual int GetBlockCount( void) const = 0 ;
|
||||||
virtual int GetBlockUpdatingCounter( int nBlock) const = 0 ;
|
virtual int GetBlockUpdatingCounter( int nBlock) const = 0 ;
|
||||||
virtual bool GetBlockTriangles( int nBlock, TRIA3DEXVECTOR& vTria) const = 0 ;
|
virtual bool GetBlockTriangles( int nBlock, TRIA3DEXVECTOR& vTria) const = 0 ;
|
||||||
|
|||||||
Reference in New Issue
Block a user