EgtGeomKernel :

- altra correzione a MC_Table per Zmap
- in Zmap ad AvoidBox, AvoidCylinder e AvoidSphere aggiunto parametro dSafeDist e migliorate queste funzioni.
This commit is contained in:
Dario Sassi
2019-04-08 09:58:57 +00:00
parent 541de9ac58
commit 59a2cfbfed
4 changed files with 123 additions and 33 deletions
+3 -6
View File
@@ -280,15 +280,12 @@ CAvToolSurfTm::MyTestPositionHG( Point3d& ptT, const Vector3d& vtDir)
Vector3d vtDirL = vtDir ; vtDirL.ToLoc( m_frMove) ;
b3Tool.Add( ptTL) ;
b3Tool.Add( ptTL - vtDirL * m_Tool.GetHeigth()) ;
if ( AreSameOrOppositeVectorApprox( vtDir, m_frMove.VersX())) {
if ( vtDirL.IsXplus() || vtDirL.IsXminus())
b3Tool.Expand( 0, m_Tool.GetRadius(), m_Tool.GetRadius()) ;
}
else if ( AreSameOrOppositeVectorApprox( vtDir, m_frMove.VersY())) {
else if ( vtDirL.IsYplus() || vtDirL.IsYminus())
b3Tool.Expand( m_Tool.GetRadius(), 0, m_Tool.GetRadius()) ;
}
else if ( AreSameOrOppositeVectorApprox( vtDir, m_frMove.VersZ())) {
else if ( vtDirL.IsZplus() || vtDirL.IsZminus())
b3Tool.Expand( m_Tool.GetRadius(), m_Tool.GetRadius(), 0) ;
}
else {
double dExpandX = m_Tool.GetRadius() * sqrt( 1 - vtDirL.x * vtDirL.x) ;
double dExpandY = m_Tool.GetRadius() * sqrt( 1 - vtDirL.y * vtDirL.y) ;