diff --git a/EXE_GdbModifyCurve.cpp b/EXE_GdbModifyCurve.cpp index e9c4bd6..7dcf41c 100644 --- a/EXE_GdbModifyCurve.cpp +++ b/EXE_GdbModifyCurve.cpp @@ -1541,47 +1541,6 @@ ExeAddCurveCompoCurve( int nId, int nAddCrvId, bool bEraseOrig, bool bEndVsStart return bOk ; } -//------------------------------------------------------------------------------- -bool -ExeAddCurveCompoLineTg( int nId, double dLen, bool bEndVsStart) -{ - IGeomDB* pGeomDB = GetCurrGeomDB() ; - VERIFY_GEOMDB( pGeomDB, false) - bool bOk = true ; - // recupero la curva composita - ICurveComposite* pCompo = GetCurveComposite( pGeomDB->GetGeoObj( nId)) ; - bOk = bOk && ( pCompo != nullptr) ; - // calcolo punto di allungo - Point3d ptNew ; - if ( bEndVsStart) { - Point3d ptEnd ; - Vector3d vtEnd ; - bOk = bOk && pCompo->GetEndPoint( ptEnd) && pCompo->GetEndDir( vtEnd) ; - if ( bOk) - ptNew = ptEnd + vtEnd * dLen ; - } - else { - Point3d ptStart ; - Vector3d vtStart ; - bOk = bOk && pCompo->GetStartPoint( ptStart) && pCompo->GetStartDir( vtStart) ; - if ( bOk) - ptNew = ptStart - vtStart * dLen ; - } - // eseguo la modifica - bOk = bOk && pCompo->AddLine( ptNew, bEndVsStart) ; - ExeSetModified() ; - // se richiesto, salvo il comando Lua equivalente - if ( IsCmdLog()) { - string sLua = "EgtAddCurveCompoLineTg(" + ToString( nId) + ",{" + - ToString( dLen) + "}," + - ( bEndVsStart ? "true" : "false") + ")" + - " -- Ok=" + ToString( bOk) ; - LOG_INFO( GetCmdLogger(), sLua.c_str()) ; - } - // restituisco il risultato - return bOk ; -} - //------------------------------------------------------------------------------- bool ExeAddCurveCompoLine( int nId, const Point3d& ptP, bool bEndVsStart, int nRefType) @@ -1615,7 +1574,7 @@ ExeAddCurveCompoLine( int nId, const Point3d& ptP, bool bEndVsStart, int nRefTyp //------------------------------------------------------------------------------- bool -ExeAddCurveCompoArcTg( int nId, const Point3d& ptP, bool bEndVsStart, int nRefType) +ExeAddCurveCompoLineTg( int nId, double dLen, bool bEndVsStart) { IGeomDB* pGeomDB = GetCurrGeomDB() ; VERIFY_GEOMDB( pGeomDB, false) @@ -1623,20 +1582,14 @@ ExeAddCurveCompoArcTg( int nId, const Point3d& ptP, bool bEndVsStart, int nRefTy // recupero la curva composita ICurveComposite* pCompo = GetCurveComposite( pGeomDB->GetGeoObj( nId)) ; bOk = bOk && ( pCompo != nullptr) ; - // recupero il riferimento locale - Frame3d frLoc ; - bOk = bOk && pGeomDB->GetGlobFrame( nId, frLoc) ; - // porto in locale il nuovo punto - Point3d ptPL = GetPointLocal( pGeomDB, ptP, nRefType, frLoc) ; // eseguo la modifica - bOk = bOk && pCompo->AddArcTg( ptPL, bEndVsStart) ; + bOk = bOk && pCompo->AddLineTg( dLen, bEndVsStart) ; ExeSetModified() ; // se richiesto, salvo il comando Lua equivalente if ( IsCmdLog()) { - string sLua = "EgtAddCurveCompoArcTg(" + ToString( nId) + ",{" + - ToString( ptP) + "}," + - ( bEndVsStart ? "true" : "false") + "," + - RefTypeToString( nRefType) + ")" + + string sLua = "EgtAddCurveCompoLineTg(" + ToString( nId) + ",{" + + ToString( dLen) + "}," + + ( bEndVsStart ? "true" : "false") + ")" + " -- Ok=" + ToString( bOk) ; LOG_INFO( GetCmdLogger(), sLua.c_str()) ; } @@ -1677,6 +1630,37 @@ ExeAddCurveCompoArc2P( int nId, const Point3d& ptMid, const Point3d& ptP, bool b return bOk ; } +//------------------------------------------------------------------------------- +bool +ExeAddCurveCompoArcTg( int nId, const Point3d& ptP, bool bEndVsStart, int nRefType) +{ + IGeomDB* pGeomDB = GetCurrGeomDB() ; + VERIFY_GEOMDB( pGeomDB, false) + bool bOk = true ; + // recupero la curva composita + ICurveComposite* pCompo = GetCurveComposite( pGeomDB->GetGeoObj( nId)) ; + bOk = bOk && ( pCompo != nullptr) ; + // recupero il riferimento locale + Frame3d frLoc ; + bOk = bOk && pGeomDB->GetGlobFrame( nId, frLoc) ; + // porto in locale il nuovo punto + Point3d ptPL = GetPointLocal( pGeomDB, ptP, nRefType, frLoc) ; + // eseguo la modifica + bOk = bOk && pCompo->AddArcTg( ptPL, bEndVsStart) ; + ExeSetModified() ; + // se richiesto, salvo il comando Lua equivalente + if ( IsCmdLog()) { + string sLua = "EgtAddCurveCompoArcTg(" + ToString( nId) + ",{" + + ToString( ptP) + "}," + + ( bEndVsStart ? "true" : "false") + "," + + RefTypeToString( nRefType) + ")" + + " -- Ok=" + ToString( bOk) ; + LOG_INFO( GetCmdLogger(), sLua.c_str()) ; + } + // restituisco il risultato + return bOk ; +} + //------------------------------------------------------------------------------- bool ExeRemoveCurveCompoCurve( int nId, bool bLast) diff --git a/LUA_GdbModifyCurve.cpp b/LUA_GdbModifyCurve.cpp index ddff33e..d741b1b 100644 --- a/LUA_GdbModifyCurve.cpp +++ b/LUA_GdbModifyCurve.cpp @@ -590,24 +590,6 @@ LuaAddCurveCompoCurve( lua_State* L) return 1 ; } -//---------------------------------------------------------------------------- -static int -LuaAddCurveCompoLineTg( lua_State* L) -{ - // 2 o 3 parametri : Id, dLen [, bEndVsStart] - int nId ; - LuaCheckParam( L, 1, nId) - double dLen ; - LuaCheckParam( L, 2, dLen) - bool bEndVsStart = true ; - LuaGetParam( L, 3, bEndVsStart) ; - LuaClearStack( L) ; - // aggiungo una linea in coda alla curva composita - bool bOk = ExeAddCurveCompoLineTg( nId, dLen, bEndVsStart) ; - LuaSetParam( L, bOk) ; - return 1 ; -} - //---------------------------------------------------------------------------- static int LuaAddCurveCompoLine( lua_State* L) @@ -632,22 +614,18 @@ LuaAddCurveCompoLine( lua_State* L) //---------------------------------------------------------------------------- static int -LuaAddCurveCompoArcTg( lua_State* L) +LuaAddCurveCompoLineTg( lua_State* L) { - // 2, 3 o 4 parametri : Id, ptNew [, bEndVsStart] [, nRefType] + // 2 o 3 parametri : Id, dLen [, bEndVsStart] int nId ; LuaCheckParam( L, 1, nId) - Point3d ptNew ; - LuaCheckParam( L, 2, ptNew) + double dLen ; + LuaCheckParam( L, 2, dLen) bool bEndVsStart = true ; - int nRefType = RTY_DEFAULT ; - if ( LuaGetParam( L, 3, bEndVsStart)) - LuaGetParam( L, 4, nRefType) ; - else - LuaGetParam( L, 3, nRefType) ; + LuaGetParam( L, 3, bEndVsStart) ; LuaClearStack( L) ; - // aggiungo un arco tangente in coda alla curva composita - bool bOk = ExeAddCurveCompoArcTg( nId, ptNew, bEndVsStart, nRefType) ; + // aggiungo una linea in coda alla curva composita + bool bOk = ExeAddCurveCompoLineTg( nId, dLen, bEndVsStart) ; LuaSetParam( L, bOk) ; return 1 ; } @@ -676,6 +654,28 @@ LuaAddCurveCompoArc2P( lua_State* L) return 1 ; } +//---------------------------------------------------------------------------- +static int +LuaAddCurveCompoArcTg( lua_State* L) +{ + // 2, 3 o 4 parametri : Id, ptNew [, bEndVsStart] [, nRefType] + int nId ; + LuaCheckParam( L, 1, nId) + Point3d ptNew ; + LuaCheckParam( L, 2, ptNew) + bool bEndVsStart = true ; + int nRefType = RTY_DEFAULT ; + if ( LuaGetParam( L, 3, bEndVsStart)) + LuaGetParam( L, 4, nRefType) ; + else + LuaGetParam( L, 3, nRefType) ; + LuaClearStack( L) ; + // aggiungo un arco tangente in coda alla curva composita + bool bOk = ExeAddCurveCompoArcTg( nId, ptNew, bEndVsStart, nRefType) ; + LuaSetParam( L, bOk) ; + return 1 ; +} + //---------------------------------------------------------------------------- static int LuaRemoveCurveCompoCurve( lua_State* L) @@ -927,10 +927,10 @@ LuaInstallGdbModifyCurve( LuaMgr& luaMgr) bOk = bOk && luaMgr.RegisterFunction( "EgtModifyArcByFlip", LuaModifyArcByFlip) ; bOk = bOk && luaMgr.RegisterFunction( "EgtCloseCurveCompo", LuaCloseCurveCompo) ; bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoCurve", LuaAddCurveCompoCurve) ; - bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoLineTg", LuaAddCurveCompoLineTg) ; bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoLine", LuaAddCurveCompoLine) ; - bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoArcTg", LuaAddCurveCompoArcTg) ; + bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoLineTg", LuaAddCurveCompoLineTg) ; bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoArc2P", LuaAddCurveCompoArc2P) ; + bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoArcTg", LuaAddCurveCompoArcTg) ; bOk = bOk && luaMgr.RegisterFunction( "EgtRemoveCurveCompoCurve", LuaRemoveCurveCompoCurve) ; bOk = bOk && luaMgr.RegisterFunction( "EgtAddCurveCompoJoint", LuaAddCurveCompoJoint) ; bOk = bOk && luaMgr.RegisterFunction( "EgtModifyCurveCompoJoint", LuaModifyCurveCompoJoint) ;