diff --git a/EGkCurveComposite.h b/EGkCurveComposite.h index ea27959..15bbba7 100644 --- a/EGkCurveComposite.h +++ b/EGkCurveComposite.h @@ -93,10 +93,16 @@ inline ICurveComposite* ConvertCurveToComposite( IGeoObj* pGObj) delete pGObj ; return nullptr ; } - ICurveComposite* pCrvCo = CreateCurveComposite() ; - if ( pCrvCo == nullptr) { - delete pGObj ; - return nullptr ; + ICurveComposite* pCrvCo = GetCurveComposite( pGObj) ; + if ( pCrvCo != nullptr) { + return pCrvCo ; + } + else { + pCrvCo = CreateCurveComposite() ; + if ( pCrvCo == nullptr) { + delete pGObj ; + return nullptr ; + } } ICurve* pCrv = static_cast( pGObj) ; Vector3d vtExtr ;