EgtMachKernel :
- al carico macchina correzione aggiustamento assi rotanti geometrici per simulazione quando angolo di rotazione da teorici è molto piccolo - al carico macchina quando si ruotano assi rotanti e richiesto ora si ruota anche geometria ausiliaria.
This commit is contained in:
+6
-6
@@ -1401,11 +1401,11 @@ Machine::GetMyAngles( const Vector3d& vtDirT, const Vector3d& vtDirA,
|
||||
vtTool.Rotate( RotAx2.vtDir, dAngB1) ;
|
||||
vtTool.Rotate( RotAx1.vtDir, dAngA1) ;
|
||||
bool bDetC1 ;
|
||||
if ( ! vtTool.GetRotation( vtDirTn, vtR3, EPS_SMALL, dAngC1, bDetC1) || ! bDetC1) {
|
||||
if ( ! vtTool.GetRotation( vtDirTn, vtR3, SIN_EPS_ANG_SMALL, dAngC1, bDetC1) || ! bDetC1) {
|
||||
Vector3d vtAux = vtDirI ;
|
||||
vtAux.Rotate( RotAx2.vtDir, dAngB1) ;
|
||||
vtAux.Rotate( RotAx1.vtDir, dAngA1) ;
|
||||
if ( ! vtAux.GetRotation( vtDirAn, vtR3, EPS_SMALL, dAngC1, bDetC1) || ! bDetC1) {
|
||||
if ( ! vtAux.GetRotation( vtDirAn, vtR3, SIN_EPS_ANG_SMALL, dAngC1, bDetC1) || ! bDetC1) {
|
||||
LOG_ERROR( GetEMkLogger(), "Error : R3 not calculable (machine)")
|
||||
return false ;
|
||||
}
|
||||
@@ -2398,7 +2398,7 @@ Machine::GetRobotAngles( const Point3d& ptP, const Vector3d& vtDirT, const Vecto
|
||||
// calcolo il primo asse rotante
|
||||
Vector3d vtArm = ptCen - m_vCalcRotAx[0].ptPos ;
|
||||
double dAng1 ; bool bDet1 ;
|
||||
if ( ! X_AX.GetRotation( vtArm, m_vCalcRotAx[0].vtDir, EPS_SMALL, dAng1, bDet1) || ! bDet1) {
|
||||
if ( ! X_AX.GetRotation( vtArm, m_vCalcRotAx[0].vtDir, SIN_EPS_ANG_SMALL, dAng1, bDet1) || ! bDet1) {
|
||||
LOG_ERROR( GetEMkLogger(), "Error : direction unreachable (robot)")
|
||||
return false ;
|
||||
}
|
||||
@@ -2430,7 +2430,7 @@ Machine::GetRobotAngles( const Point3d& ptP, const Vector3d& vtDirT, const Vecto
|
||||
}
|
||||
double dAngB = acos( dCosB) * RADTODEG ;
|
||||
double dAng2 ; bool bDet2 ;
|
||||
if ( ! Z_AX.GetRotation( vtR2Cen, vtR2, EPS_SMALL, dAng2, bDet2) || ! bDet2) {
|
||||
if ( ! Z_AX.GetRotation( vtR2Cen, vtR2, SIN_EPS_ANG_SMALL, dAng2, bDet2) || ! bDet2) {
|
||||
LOG_ERROR( GetEMkLogger(), "Error : R2 not calculable (robot)")
|
||||
return false ;
|
||||
}
|
||||
@@ -2472,11 +2472,11 @@ Machine::GetRobotAngles( const Point3d& ptP, const Vector3d& vtDirT, const Vecto
|
||||
for ( int i = 4; i >= 0 ; --i)
|
||||
vtTool.Rotate( m_vCalcRotAx[i].vtDir, vAng1[i]) ;
|
||||
double dAng6 ; bool bDet6 ;
|
||||
if ( ! vtTool.GetRotation( vtDirTL, vtR6, EPS_SMALL, dAng6, bDet6) || ! bDet6) {
|
||||
if ( ! vtTool.GetRotation( vtDirTL, vtR6, SIN_EPS_ANG_SMALL, dAng6, bDet6) || ! bDet6) {
|
||||
Vector3d vtAux = m_vtCalcADir ;
|
||||
for ( int i = 4; i >= 0 ; --i)
|
||||
vtAux.Rotate( m_vCalcRotAx[i].vtDir, vAng1[i]) ;
|
||||
if ( ! vtAux.GetRotation( vtDirAL, vtR6, EPS_SMALL, dAng6, bDet6) || ! bDet6) {
|
||||
if ( ! vtAux.GetRotation( vtDirAL, vtR6, SIN_EPS_ANG_SMALL, dAng6, bDet6) || ! bDet6) {
|
||||
LOG_ERROR( GetEMkLogger(), "Error : R6 not calculable (robot)")
|
||||
return false ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user