EgtMachKernel :

- piccola correzione alla precedente modifica (i cilindri per la verifica di colisione non possono avere altezza nulla).
This commit is contained in:
Dario Sassi
2026-08-05 14:56:54 +02:00
parent 2e32adf1af
commit e58792d4ff
+3 -1
View File
@@ -5671,7 +5671,9 @@ Operation::OneMoveTestCollisionAvoid( const STRVECTOR& vAxName, const DBLVECTOR&
// 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, *pStm, dSafeDist)) {
double dCylR = max( {vtDiag.x / 2, vtDiag.y /2, 10 * EPS_SMALL}) ;
double dCylH = max( vtDiag.z, 10 * EPS_SMALL) ;
if ( pStm == nullptr || CDeCylClosedSurfTm( frHsol, dCylR, dCylH, *pStm, dSafeDist)) {
bCollide = true ;
break ;
}