EgtGeomKernel 1.5i4 :
- tolto controllo antidebug da release per VB.NET - aggiunti metodi CurveArc::Set2PNRS e SetC2PN - aggiunta scrittura MachineId come commento in NGE di testo.
This commit is contained in:
@@ -378,6 +378,29 @@ CurveArc::Set2PRS( const Point3d& ptStart, const Point3d& ptEnd, double dRad, bo
|
||||
return Validate() ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Set per arco di circonferenza in un piano generico con ptStart, ptEnd, vtN, dRad, bCCW
|
||||
// ( si suppone |dAngCenDeg| <= 180deg)
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
CurveArc::Set2PNRS( const Point3d& ptStart, const Point3d& ptEnd, const Vector3d& vtN, double dRad, bool bCCW)
|
||||
{
|
||||
// calcolo il riferimento OCS derivato da vtN
|
||||
Frame3d frOcs ;
|
||||
if ( ! frOcs.Set( ORIG, vtN))
|
||||
return false ;
|
||||
// porto i punti in questo riferimento
|
||||
Point3d ptSloc = ptStart ;
|
||||
ptSloc.ToLoc( frOcs) ;
|
||||
Point3d ptEloc = ptEnd ;
|
||||
ptEloc.ToLoc( frOcs) ;
|
||||
// calcolo l'arco in questo piano
|
||||
if ( ! Set2PRS( ptSloc, ptEloc, dRad, bCCW))
|
||||
return false ;
|
||||
// riporto l'arco nel riferimento naturale
|
||||
return ToGlob( frOcs) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Set per arco di circonferenza nel piano XY con ptCen, ptStart, ptNearEnd
|
||||
// ( si suppone |dAngCenDeg| <= 180deg)
|
||||
@@ -412,6 +435,31 @@ CurveArc::SetC2P( const Point3d& ptCen, const Point3d& ptStart, const Point3d& p
|
||||
return Validate() ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Set per arco di circonferenza in un piano generico con ptCen, ptStart, ptNearEnd, vtN
|
||||
// ( si suppone |dAngCenDeg| <= 180deg)
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
CurveArc::SetC2PN( const Point3d& ptCen, const Point3d& ptStart, const Point3d& ptNearEnd, const Vector3d& vtN)
|
||||
{
|
||||
// calcolo il riferimento OCS derivato da vtN
|
||||
Frame3d frOcs ;
|
||||
if ( ! frOcs.Set( ORIG, vtN))
|
||||
return false ;
|
||||
// porto i punti in questo riferimento
|
||||
Point3d ptCloc = ptCen ;
|
||||
ptCloc.ToLoc( frOcs) ;
|
||||
Point3d ptSloc = ptStart ;
|
||||
ptSloc.ToLoc( frOcs) ;
|
||||
Point3d ptNEloc = ptNearEnd ;
|
||||
ptNEloc.ToLoc( frOcs) ;
|
||||
// calcolo l'arco in questo piano
|
||||
if ( ! SetC2P( ptCloc, ptSloc, ptNEloc))
|
||||
return false ;
|
||||
// riporto l'arco nel riferimento naturale
|
||||
return ToGlob( frOcs) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
CurveArc*
|
||||
CurveArc::Clone( void) const
|
||||
|
||||
Reference in New Issue
Block a user