EgtExecutor 1.6p1 :
- piccole migliorie ed aggiustamenti.
This commit is contained in:
+12
-12
@@ -370,7 +370,7 @@ CreateLineTgTwoCurves( IGeomDB* pGeomDB, int nParentId,
|
||||
ptN2loc.LocToLoc( frDest, frCrv1) ;
|
||||
// calcolo la retta tangente alle due curve
|
||||
PtrOwner<ICurveLine> pCrvLine ;
|
||||
pCrvLine.Set( GetLineTgTwoCurves( *pCrv1, ptN1loc, *Get( pCrv2Loc), ptN2loc)) ;
|
||||
pCrvLine.Set( GetLineTgTwoCurves( *pCrv1, ptN1loc, *pCrv2Loc, ptN2loc)) ;
|
||||
if ( IsNull( pCrvLine))
|
||||
return nullptr ;
|
||||
// porto la linea nel riferimento del gruppo destinazione
|
||||
@@ -420,7 +420,7 @@ CreateLinePerpTwoCurves( IGeomDB* pGeomDB, int nParentId,
|
||||
ptN2loc.LocToLoc( frDest, frCrv1) ;
|
||||
// calcolo la retta perpendicolare alle due curve
|
||||
PtrOwner<ICurveLine> pCrvLine ;
|
||||
pCrvLine.Set( GetLinePerpTwoCurves( *pCrv1, ptN1loc, *Get(pCrv2Loc), ptN2loc)) ;
|
||||
pCrvLine.Set( GetLinePerpTwoCurves( *pCrv1, ptN1loc, *pCrv2Loc, ptN2loc)) ;
|
||||
if ( IsNull( pCrvLine))
|
||||
return nullptr ;
|
||||
// porto la linea nel riferimento del gruppo destinazione
|
||||
@@ -470,7 +470,7 @@ CreateLineTgCurvePerpCurve( IGeomDB* pGeomDB, int nParentId,
|
||||
ptN2loc.LocToLoc( frDest, frCrv1) ;
|
||||
// calcolo la retta perpendicolare alle due curve
|
||||
PtrOwner<ICurveLine> pCrvLine ;
|
||||
pCrvLine.Set( GetLineTgCurvePerpCurve( *pCrv1, ptN1loc, *Get( pCrv2Loc), ptN2loc)) ;
|
||||
pCrvLine.Set( GetLineTgCurvePerpCurve( *pCrv1, ptN1loc, *pCrv2Loc, ptN2loc)) ;
|
||||
if ( IsNull( pCrvLine))
|
||||
return nullptr ;
|
||||
// porto la linea nel riferimento del gruppo destinazione
|
||||
@@ -737,7 +737,7 @@ ExeCreateCircleCPEx( int nParentId, const Point3d& ptCen,
|
||||
// recupero la curva di tangenza in locale
|
||||
CurveLocal CrvTgLoc( pGeomDB, nIdO, frLoc) ;
|
||||
// calcolo la circonferenza tangente a questa curva
|
||||
pCrvArc.Set( GetCircleCenTgCurve( ptCenL, vtNL, *CrvTgLoc.Get(), ptOnL)) ;
|
||||
pCrvArc.Set( GetCircleCenTgCurve( ptCenL, vtNL, *CrvTgLoc, ptOnL)) ;
|
||||
bOk = bOk && ! IsNull( pCrvArc) ;
|
||||
}
|
||||
// altrimenti errore
|
||||
@@ -973,7 +973,7 @@ ExeCreateArcC2PEx( int nParentId, const Point3d& ptCen,
|
||||
// recupero la curva di tangenza in locale
|
||||
CurveLocal CrvTgLoc( pGeomDB, nIdS, frLoc) ;
|
||||
// calcolo l'arco tangente a questa curva
|
||||
pCrvArc.Set( GetArcCenTgCurvePnt( ptCenL, *CrvTgLoc.Get(), ptStartL, ptNearEndL, vtNormL)) ;
|
||||
pCrvArc.Set( GetArcCenTgCurvePnt( ptCenL, *CrvTgLoc, ptStartL, ptNearEndL, vtNormL)) ;
|
||||
bOk = bOk && ! IsNull( pCrvArc) ;
|
||||
}
|
||||
// altrimenti errore
|
||||
@@ -1026,7 +1026,7 @@ ExeCreateArc3P( int nParentId, const Point3d& ptP1,
|
||||
bOk = bOk && pCrv->SetExtrusion( vtExtrL) ;
|
||||
// se arco, verifico che normale al suo piano e versore estrusione non siano controversi
|
||||
if ( bOk && pCrv->GetType() == CRV_ARC) {
|
||||
ICurveArc* pArc = GetCurveArc( Get( pCrv)) ;
|
||||
ICurveArc* pArc = GetCurveArc( pCrv) ;
|
||||
if ( ( pArc->GetNormVersor() * vtExtrL) < 0)
|
||||
pArc->InvertN() ;
|
||||
}
|
||||
@@ -1117,14 +1117,14 @@ ExeCreateArc2PDEx( int nParentId, const Point3d& ptStart,
|
||||
bOk = bOk && ! IsNull( pCrv) ;
|
||||
if ( bOk) {
|
||||
// imposto l'arco
|
||||
if ( (dynamic_cast<ICurveArc*>(Get(pCrv)))->Set2PVN( ptStartL, ptEndL, vtDirSL, vtNormL))
|
||||
if ( GetCurveArc( pCrv)->Set2PVN( ptStartL, ptEndL, vtDirSL, vtNormL))
|
||||
;
|
||||
// non riuscito, provo se risulta essere una retta
|
||||
else if ( ( ptEndL - ptStartL) * vtDirSL > EPS_ZERO) {
|
||||
// creo e setto la retta
|
||||
pCrv.Set( CreateCurveLine()) ;
|
||||
bOk = bOk && ! IsNull( pCrv) ;
|
||||
bOk = bOk && (dynamic_cast<ICurveLine*>(Get(pCrv)))->Set( ptStartL, ptEndL) ;
|
||||
bOk = bOk && GetCurveLine( pCrv)->Set( ptStartL, ptEndL) ;
|
||||
}
|
||||
// impossibile
|
||||
else
|
||||
@@ -1136,7 +1136,7 @@ ExeCreateArc2PDEx( int nParentId, const Point3d& ptStart,
|
||||
// recupero la curva di tangenza in locale
|
||||
CurveLocal CrvTgLoc( pGeomDB, nId, frLoc) ;
|
||||
// calcolo l'arco tangente a questa curva
|
||||
pCrv.Set( GetArcPntDirTgCurve( ptStartL, vtDirSL, *CrvTgLoc.Get(), ptEndL, vtNormL)) ;
|
||||
pCrv.Set( GetArcPntDirTgCurve( ptStartL, vtDirSL, *CrvTgLoc, ptEndL, vtNormL)) ;
|
||||
bOk = bOk && ! IsNull( pCrv) ;
|
||||
}
|
||||
// altrimenti errore
|
||||
@@ -1278,7 +1278,7 @@ ExeCreateCurveFillet( int nParentId, int nCrv1, const Point3d& ptNear1,
|
||||
CurveLocal CrvLoc2( pGeomDB, nCrv2, frLoc) ;
|
||||
// calcolo il raccordo
|
||||
double dTrim1, dTrim2 ;
|
||||
pArc.Set( CreateFillet( *CrvLoc1.Get(), ptNear1L, *CrvLoc2.Get(), ptNear2L, vtNormL, dRad, dTrim1, dTrim2)) ;
|
||||
pArc.Set( CreateFillet( *CrvLoc1, ptNear1L, *CrvLoc2, ptNear2L, vtNormL, dRad, dTrim1, dTrim2)) ;
|
||||
bOk = bOk && ! IsNull( pArc) ;
|
||||
// assegno il versore estrusione
|
||||
bOk = bOk && pArc->SetExtrusion( vtExtrL) ;
|
||||
@@ -1341,7 +1341,7 @@ ExeCreateCurveChamfer( int nParentId, int nCrv1, const Point3d& ptNear1,
|
||||
CurveLocal CrvLoc2( pGeomDB, nCrv2, frLoc) ;
|
||||
// calcolo lo smusso
|
||||
double dTrim1, dTrim2 ;
|
||||
pLine.Set( CreateChamfer( *CrvLoc1.Get(), ptNear1L, *CrvLoc2.Get(), ptNear2L, vtNormL, dDist, dTrim1, dTrim2)) ;
|
||||
pLine.Set( CreateChamfer( *CrvLoc1, ptNear1L, *CrvLoc2, ptNear2L, vtNormL, dDist, dTrim1, dTrim2)) ;
|
||||
bOk = bOk && ! IsNull( pLine) ;
|
||||
// assegno il versore estrusione
|
||||
bOk = bOk && pLine->SetExtrusion( vtExtrL) ;
|
||||
@@ -2294,7 +2294,7 @@ MyCreateCirclesAlongCurve( int nParentId, int nCrvId, double dOffset, double dOv
|
||||
}
|
||||
// eseguo l'offset
|
||||
OffsetCurve OffsCrv ;
|
||||
if ( ! OffsCrv.Make( Get( pCopy), dOffset, ICurve::OFF_FILLET))
|
||||
if ( ! OffsCrv.Make( pCopy, dOffset, ICurve::OFF_FILLET))
|
||||
return GDB_ID_NULL ;
|
||||
// ciclo sulle curve di offset
|
||||
int nCount = 0 ;
|
||||
|
||||
Reference in New Issue
Block a user