diff --git a/EgtMachKernel.rc b/EgtMachKernel.rc index e6d808f..a9e602d 100644 Binary files a/EgtMachKernel.rc and b/EgtMachKernel.rc differ diff --git a/Operation.cpp b/Operation.cpp index 8454740..df53403 100644 --- a/Operation.cpp +++ b/Operation.cpp @@ -3891,7 +3891,7 @@ Operation::TestCollisionAvoid( const DBLVECTOR& vAxStart, const DBLVECTOR& vAxEn // traslo il riferimento per avere il cilindro centrato sull'asse Y in positivo frHsol.Translate( frHsol.VersZ() * ptMin.z) ; // verifica di collisione tra cilindro e solido - if ( pStm == nullptr || CDeCylClosedSurfTm( frHsol, max( vtDiag.x, vtDiag.y) / 2, vtDiag.z, dSafeDist, *pStm)) { + if ( pStm == nullptr || CDeCylClosedSurfTm( frHsol, max( vtDiag.x, vtDiag.y) / 2, vtDiag.z, *pStm, dSafeDist)) { bCollide = true ; break ; } @@ -3901,7 +3901,7 @@ Operation::TestCollisionAvoid( const DBLVECTOR& vAxStart, const DBLVECTOR& vAxEn // traslo il riferimento per avere il box nel primo ottante frHsol.Translate( frHsol.VersX() * ptMin.x + frHsol.VersY() * ptMin.y + frHsol.VersZ() * ptMin.z) ; // verifica di collisione tra box e solido - if ( pStm == nullptr || CDeBoxClosedSurfTm( frHsol, vtDiag, dSafeDist, *pStm)) { + if ( pStm == nullptr || CDeBoxClosedSurfTm( frHsol, vtDiag, *pStm, dSafeDist)) { bCollide = true ; break ; } diff --git a/Simulator.cpp b/Simulator.cpp index 0e5d872..8800c31 100644 --- a/Simulator.cpp +++ b/Simulator.cpp @@ -1425,27 +1425,27 @@ Simulator::ExecCollisionCheck( int& nCdInd, int& nObjInd, int nMoveType) if ( m_CollObj[j].nType == MCH_SIM_COB_BOX) { Vector3d vtDiag( m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_CollObj[j].dPar3) ; if ( pVZM != nullptr) - bOk = pVZM->AvoidBox( frObj, vtDiag, m_dSafeDist) ; + bOk = ! pVZM->CDeBox( frObj, vtDiag, m_dSafeDist) ; else - bOk = ! CDeBoxClosedSurfTm( frObj, vtDiag, m_dSafeDist, *pSTM) ; + bOk = ! CDeBoxClosedSurfTm( frObj, vtDiag, *pSTM, m_dSafeDist) ; } else if ( m_CollObj[j].nType == MCH_SIM_COB_CYL) { if ( pVZM != nullptr) - bOk = pVZM->AvoidCylinder( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_dSafeDist) ; + bOk = ! pVZM->CDeCylinder( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_dSafeDist) ; else - bOk = ! CDeCylClosedSurfTm( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_dSafeDist, *pSTM) ; + bOk = ! CDeCylClosedSurfTm( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, *pSTM, m_dSafeDist) ; } else if ( m_CollObj[j].nType == MCH_SIM_COB_SPHE) { if ( pVZM != nullptr) - bOk = pVZM->AvoidSphere( frObj.Orig(), m_CollObj[j].dPar1, m_dSafeDist) ; + bOk = ! pVZM->CDeSphere( frObj.Orig(), m_CollObj[j].dPar1, m_dSafeDist) ; else - bOk = ! CDeSpheClosedSurfTm( frObj.Orig(), m_CollObj[j].dPar1, m_dSafeDist, *pSTM) ; + bOk = ! CDeSpheClosedSurfTm( frObj.Orig(), m_CollObj[j].dPar1, *pSTM, m_dSafeDist) ; } else if ( m_CollObj[j].nType == MCH_SIM_COB_CONE) { if ( pVZM != nullptr) - bOk = pVZM->AvoidConeFrustum( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_CollObj[j].dPar3, m_dSafeDist) ; + bOk = ! pVZM->CDeConeFrustum( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_CollObj[j].dPar3, m_dSafeDist) ; else - bOk = ! CDeConeFrustumClosedSurfTm( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_CollObj[j].dPar3, m_dSafeDist, *pSTM) ; + bOk = ! CDeConeFrustumClosedSurfTm( frObj, m_CollObj[j].dPar1, m_CollObj[j].dPar2, m_CollObj[j].dPar3, *pSTM, m_dSafeDist) ; } } // altrimenti poliedro @@ -1454,7 +1454,7 @@ Simulator::ExecCollisionCheck( int& nCdInd, int& nObjInd, int nMoveType) const ISurfTriMesh* pStmLoc = GetSurfTriMesh( SurfLoc) ; if ( pStmLoc != nullptr) { if ( pVZM != nullptr) - bOk = pVZM->AvoidSurfTm( *pStmLoc, m_dSafeDist) ; + bOk = ! pVZM->CDeSurfTm( *pStmLoc, m_dSafeDist) ; else bOk = ! CDeClosedSurfTmClosedSurfTm( *pStmLoc, *pSTM, m_dSafeDist) ; }