diff --git a/API_BeamMgr.cpp b/API_BeamMgr.cpp index 56c7091..0fef7ee 100644 --- a/API_BeamMgr.cpp +++ b/API_BeamMgr.cpp @@ -90,6 +90,38 @@ __stdcall EgtBeamSetPartBox( double dLength, double dHeight, double dWidth, BOOL return ( ExeBeamSetPartBox( dLength, dHeight, dWidth, ( bUpdate != FALSE)) ? TRUE : FALSE) ; } +//----------------------------------------------------------------------------- +BOOL +__stdcall EgtBeamGetSideData( int nSide, + double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3], + double* pdLength, double* pdWidth, double* pdHeight) +{ + // eseguo calcoli + Frame3d frRef ; + double dLength, dWidth, dHeight ; + if ( ! ExeBeamGetSideData( nSide, frRef, dLength, dWidth, dHeight)) + return FALSE ; + // assegno l'origine + if ( ptOrig != nullptr) + VEC_FROM_3D( ptOrig, frRef.Orig()) + // assegno il versore X + if ( vtX != nullptr) + VEC_FROM_3D( vtX, frRef.VersX()) + // assegno il versore Y + if ( vtY != nullptr) + VEC_FROM_3D( vtY, frRef.VersY()) + // assegno il versore Z + if ( vtZ != nullptr) + VEC_FROM_3D( vtZ, frRef.VersZ()) + if ( pdLength != nullptr) + *pdLength = dLength ; + if ( pdWidth != nullptr) + *pdWidth = dWidth ; + if ( pdHeight != nullptr) + *pdHeight = dHeight ; + return TRUE ; +} + //----------------------------------------------------------------------------- int __stdcall EgtBeamAddProcess( int nGroup, int nProc, int nSide, const wchar_t* wsDes, int nProcId, diff --git a/EgtInterface.rc b/EgtInterface.rc index 678078d..bba453f 100644 Binary files a/EgtInterface.rc and b/EgtInterface.rc differ