EgtGeomKernel 1.6d2 :

- BBox3d aggiunta LocToLoc e migliorati i controlli per validità
- aggiunta gestione estrusione nell'ingombro delle curve
- a CurveComposite aggiunta funzione che la chiude
- in GdbIterator aggiunte GoTo con nome
- in GeomDB aggiunte Get con nome
- in GeomDB aggiunto swap tra gruppi con gestione di base, sorgente e lista referenti
- migliorata gestione materiale ereditato in Relocate
- aggiunte SetInfo e GetInfo con INTVECTOR e DBLVECTOR
- aggiunte FromString e ToString con BBox3d.
This commit is contained in:
Dario Sassi
2015-04-16 06:47:52 +00:00
parent 0f7b78fea7
commit 08831a6849
24 changed files with 1082 additions and 92 deletions
+11 -2
View File
@@ -230,6 +230,15 @@ CurveLine::GetBBox( const Frame3d& frRef, BBox3d& b3Ref, int nFlag) const
ptFrEnd.ToGlob( frRef) ;
// assegno il box nel riferimento
b3Ref.Set( ptFrStart, ptFrEnd) ;
// se c'è estrusione, devo tenerne conto
if ( ! m_VtExtr.IsSmall() && fabs( m_dThick) > EPS_SMALL) {
Vector3d vtFrExtr = m_VtExtr ;
vtFrExtr.ToGlob( frRef) ;
Point3d ptMinExtr = b3Ref.GetMin() + vtFrExtr * m_dThick ;
Point3d ptMaxExtr = b3Ref.GetMax() + vtFrExtr * m_dThick ;
b3Ref.Add( ptMinExtr) ;
b3Ref.Add( ptMaxExtr) ;
}
return true ;
}
@@ -663,7 +672,7 @@ bool
CurveLine::TrimStartAtLen( double dLenTrim)
{
// lunghezze negative vengono considerate nulle
dLenTrim = __max( dLenTrim, 0) ;
dLenTrim = max( dLenTrim, 0.) ;
// verifico che sia abbastanza lunga
double dLen ;
@@ -687,7 +696,7 @@ bool
CurveLine::TrimEndAtLen( double dLenTrim)
{
// lunghezze negative vengono considerate nulle
dLenTrim = __max( dLenTrim, 0) ;
dLenTrim = max( dLenTrim, 0.) ;
// verifico che sia abbastanza lunga
double dLen ;