diff --git a/EgtGeomKernel.rc b/EgtGeomKernel.rc index b490063..6716bf9 100644 Binary files a/EgtGeomKernel.rc and b/EgtGeomKernel.rc differ diff --git a/Polygon3d.cpp b/Polygon3d.cpp index 997788b..473348e 100644 --- a/Polygon3d.cpp +++ b/Polygon3d.cpp @@ -26,6 +26,14 @@ Polygon3d::Clear( void) return true ; } +//---------------------------------------------------------------------------- +bool +Polygon3d::ClearSides( void) +{ + m_vVert.clear() ; + return true ; +} + //---------------------------------------------------------------------------- bool Polygon3d::FromRectangle( double dDimX, double dDimY) @@ -181,7 +189,7 @@ Polygon3d::Trim( const Plane3d& plPlane, bool bInVsOut, bool bOnEq) bool Polygon3d::Trim( const Polygon3d& plyOther, bool bInVsOut, bool bOnEq) { - if ( GetSideCount() == 0 || plyOther.GetSideCount() == 0) + if ( GetSideCount() == 0 || ! plyOther.IsValid()) return true ; return Trim( plyOther.m_Plane, bInVsOut, bOnEq) ; } diff --git a/StmStandard.cpp b/StmStandard.cpp index b32142e..d023e1d 100644 --- a/StmStandard.cpp +++ b/StmStandard.cpp @@ -170,7 +170,7 @@ GetSurfTriMeshPlaneInBox( const Plane3d& plPlane, const BBox3d& b3Box) // creo la trimesh con questo contorno PtrOwner pStm( CreateSurfTriMesh()) ; if ( IsNull( pStm) || ! pStm->CreateByFlatContour( Polyg.GetPolyLine())) - return false ; + return nullptr ; // restituisco la superficie return Release( pStm) ; }