EgtgeomKernel :

- aggiunta funzione GetLoopCurveCount a FlatRegion.
This commit is contained in:
Dario Sassi
2024-09-23 13:01:07 +02:00
parent 60729d5f39
commit dc070c4556
2 changed files with 14 additions and 0 deletions
+13
View File
@@ -1166,6 +1166,19 @@ SurfFlatRegion::GetLoop( int nChunk, int nLoop) const
return pCrv ;
}
//----------------------------------------------------------------------------
int
SurfFlatRegion::GetLoopCurveCount( int nChunk, int nLoop) const
{
// recupero il loop nel riferimento intrinseco
const ICurve* pMyCrv = GetMyLoop( nChunk, nLoop) ;
if ( pMyCrv == nullptr)
return 0 ;
// restituisco il numero di curve di cui è composto
const ICurveComposite* pMyCompo = GetCurveComposite( pMyCrv) ;
return ( pMyCompo == nullptr ? 1 : pMyCompo->GetCurveCount()) ;
}
//----------------------------------------------------------------------------
bool
SurfFlatRegion::ApproxLoopWithLines( int nChunk, int nLoop, double dLinTol, double dAngTolDeg, int nType, PolyLine& PL) const
+1
View File
@@ -109,6 +109,7 @@ class SurfFlatRegion : public ISurfFlatRegion, public IGeoObjRW
int GetChunkSimpleClassification( int nChunk, const ISurfFlatRegion& Other, int nOthChunk) const override ; // compare only outsides
bool GetChunkMaxOffset( int nChunk, double& dOffs) const override ;
int GetLoopCount( int nChunk) const override ;
int GetLoopCurveCount( int nChunk, int nLoop) const override ;
ICurve* GetLoop( int nChunk, int nLoop) const override ; // nChunk 0-based, nLoop 0-based (1°esterno, successivi interni)
bool ApproxLoopWithLines( int nChunk, int nLoop, double dLinTol, double dAngTolDeg, int nType, PolyLine& PL) const override ;
bool SetCurveTempProp( int nChunk, int nLoop, int nCrv, int nProp, int nPropInd = 0) override ;