EgtMachKernel :
- in foratura anche le composite con curve di Bezier che sono cerchi vengono riconosciute - aggiustato parametro di sicurezza per controllo collisioni nei rapidi.
This commit is contained in:
+12
-3
@@ -1219,11 +1219,20 @@ Drilling::GetHoleData( SelData Id, Hole& hole)
|
||||
const ICurveArc* pArc = GetCurveArc( m_pGeomDB->GetGeoObj( Id.nId)) ;
|
||||
if ( pArc == nullptr) {
|
||||
const ICurveComposite* pCompo = GetCurveComposite( m_pGeomDB->GetGeoObj( Id.nId)) ;
|
||||
if ( pCompo == nullptr)
|
||||
Point3d ptCen ;
|
||||
Vector3d vtN ;
|
||||
double dRad ;
|
||||
bool bCCW ;
|
||||
if ( pCompo == nullptr || ! pCompo->IsACircle( 100 * EPS_SMALL, ptCen, vtN, dRad, bCCW))
|
||||
return false ;
|
||||
const ICurveArc* pArcTmp = GetCurveArc( pCompo->GetFirstCurve()) ;
|
||||
if ( pArcTmp == nullptr || ! pMyArc.Set( pArcTmp->Clone()))
|
||||
pMyArc.Set( CreateCurveArc()) ;
|
||||
if ( IsNull( pMyArc) || ! pMyArc->Set( ptCen, vtN, dRad))
|
||||
return false ;
|
||||
//if ( pCompo == nullptr)
|
||||
// return false ;
|
||||
//const ICurveArc* pArcTmp = GetCurveArc( pCompo->GetFirstCurve()) ;
|
||||
//if ( pArcTmp == nullptr || ! pMyArc.Set( pArcTmp->Clone()))
|
||||
// return false ;
|
||||
Vector3d vtExtr ; pCompo->GetExtrusion( vtExtr) ;
|
||||
pMyArc->SetExtrusion( vtExtr) ;
|
||||
double dThick = 0 ; pCompo->GetThickness( dThick) ;
|
||||
|
||||
Reference in New Issue
Block a user