diff --git a/EGkTriangle3d.h b/EGkTriangle3d.h index 9e5e1c8..df05a50 100644 --- a/EGkTriangle3d.h +++ b/EGkTriangle3d.h @@ -39,10 +39,11 @@ class Triangle3d return false ; Vector3d vtV = ( ptP[1] - ptP[0]) ^ ( ptP[2] - ptP[0]) ; vtV.Normalize() ; - bool bOk = ( vtN.IsZero() || AreSameVectorApprox( vtV, vtN)) ; - if ( bOverwrite) + if ( vtN.IsZero() || bOverwrite) { vtN = vtV ; - return bOk ; + return true ; + } + return AreSameVectorApprox( vtV, vtN) ; } bool ToGlob( const Frame3d& frRef) { return ( ptP[0].ToGlob( frRef) && ptP[1].ToGlob( frRef) && ptP[2].ToGlob( frRef)) ; } diff --git a/EGkVolZmap.h b/EGkVolZmap.h index 9205dc1..8dc430a 100644 --- a/EGkVolZmap.h +++ b/EGkVolZmap.h @@ -31,6 +31,8 @@ class __declspec( novtable) IVolZmap : public IGeoObj 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 GetAllTriangles( TRIA3DLIST& lstTria) const = 0 ; + virtual bool GetBlockTriangles( int nBlock, TRIA3DLIST& lstTria) const = 0 ; + virtual bool GetBlockInfo( std::vector & bModified) const = 0 ; virtual bool GetDexelLines( int nDir, int nPos1, int nPos2, POLYLINELIST& lstPL) const = 0 ; virtual bool SetTolerances( double dLinTol, double dAngTolDeg = 90) = 0 ; virtual bool SetStdTool( const std::string& pToolName, double dH, double dR, double dCornR) = 0 ;