diff --git a/EXE_GdbCreateSurf.cpp b/EXE_GdbCreateSurf.cpp index c2d0ba8..76588ba 100644 --- a/EXE_GdbCreateSurf.cpp +++ b/EXE_GdbCreateSurf.cpp @@ -1626,7 +1626,7 @@ ExeCreateSurfBezierRational( int nParentId, int nDegU, int nDegV, int nSpanU, in //------------------------------------------------------------------------------- int -ExeCreateSurfBezierLeaves( int nParentId, int nSurfBzId, int nTextHeight) +ExeCreateSurfBezierLeaves( int nParentId, int nSurfBzId, int nTextHeight, bool bShowTrim) { IGeomDB* pGeomDB = GetCurrGeomDB() ; VERIFY_GEOMDB( pGeomDB, GDB_ID_NULL) @@ -1673,6 +1673,9 @@ ExeCreateSurfBezierLeaves( int nParentId, int nSurfBzId, int nTextHeight) // inserisco il testo nel DB nId = ( bOk ? pGeomDB->AddGeoObj( GDB_ID_NULL, nParentId, Release( pTXT)): GDB_ID_NULL) ; } + PtrOwner pTrimReg( pSurfBez->GetTrimRegion()->Clone()) ; + if ( bShowTrim && ! IsNull( pTrimReg)) + nId = ( bOk ? pGeomDB->AddGeoObj( GDB_ID_NULL, nParentId, Release( pTrimReg)) : -1 ) ; return nId ; } diff --git a/LUA_GdbCreateSurf.cpp b/LUA_GdbCreateSurf.cpp index e89d7d7..19ff3dc 100644 --- a/LUA_GdbCreateSurf.cpp +++ b/LUA_GdbCreateSurf.cpp @@ -827,9 +827,11 @@ LuaCreateSurfBezierLeaves( lua_State* L) LuaCheckParam( L, 2, nSurfBzId) int nTextHeight ; LuaCheckParam( L, 3, nTextHeight) + bool bShowTrim ; + LuaCheckParam( L, 4, bShowTrim) LuaClearStack( L) ; // creo la superficie - int nId = ExeCreateSurfBezierLeaves( nParentId, nSurfBzId, nTextHeight) ; + int nId = ExeCreateSurfBezierLeaves( nParentId, nSurfBzId, nTextHeight, bShowTrim) ; // restituisco il risultato if ( nId != GDB_ID_NULL) LuaSetParam( L, nId) ;