EgtInterface :
- aggiunte interfacce per EgtCurveIsACircle, EgtCurveIsARectangle e EgtCurveIsATrapezoid.
This commit is contained in:
@@ -68,6 +68,58 @@ __stdcall EgtCurveIsFlat( int nId, BOOL bUseExtrusion, double dToler, double vtN
|
||||
return TRUE ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
BOOL
|
||||
__stdcall EgtCurveIsACircle( int nId, double dToler, double ptC[3], double vtN[3], double* pdRad, BOOL* pbCCW)
|
||||
{
|
||||
if ( ptC == nullptr || vtN == nullptr || pdRad == nullptr || pbCCW == nullptr)
|
||||
return FALSE ;
|
||||
Point3d ptCen ;
|
||||
Vector3d vtNorm ;
|
||||
double dRad ;
|
||||
bool bCCW ;
|
||||
if ( ! ExeCurveIsACircle( nId, ptCen, vtNorm, dRad, bCCW, dToler))
|
||||
return FALSE ;
|
||||
VEC_FROM_3D( ptC, ptCen)
|
||||
VEC_FROM_3D( vtN, vtNorm)
|
||||
*pdRad = dRad ;
|
||||
*pbCCW = ( bCCW ? TRUE : FALSE) ;
|
||||
return TRUE ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
BOOL
|
||||
__stdcall EgtCurveIsARectangle( int nId, double dToler, double ptP[3], double vtL1[3], double vtL2[3])
|
||||
{
|
||||
if ( ptP == nullptr || vtL1 == nullptr || vtL2 == nullptr)
|
||||
return FALSE ;
|
||||
Point3d ptPNT ;
|
||||
Vector3d vtLato1, vtLato2 ;
|
||||
if ( ! ExeCurveIsARectangle( nId, ptPNT, vtLato1, vtLato2, dToler))
|
||||
return FALSE ;
|
||||
VEC_FROM_3D( ptP, ptPNT)
|
||||
VEC_FROM_3D( vtL1, vtLato1)
|
||||
VEC_FROM_3D( vtL2, vtLato2)
|
||||
return TRUE ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
BOOL
|
||||
__stdcall EgtCurveIsATrapezoid( int nId, double dToler, double ptP[3], double vtB1[3], double vtL1[3], double vtB2[3])
|
||||
{
|
||||
if ( ptP == nullptr || vtB1 == nullptr || vtL1 == nullptr || vtB2 == nullptr)
|
||||
return FALSE ;
|
||||
Point3d ptPNT ;
|
||||
Vector3d vtBase1, vtLato1, vtBase2 ;
|
||||
if ( ! ExeCurveIsATrapezoid( nId, ptPNT, vtBase1, vtLato1, vtBase2, dToler))
|
||||
return FALSE ;
|
||||
VEC_FROM_3D( ptP, ptPNT)
|
||||
VEC_FROM_3D( vtB1, vtBase1)
|
||||
VEC_FROM_3D( vtL1, vtLato1)
|
||||
VEC_FROM_3D( vtB2, vtBase2)
|
||||
return TRUE ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
BOOL
|
||||
__stdcall EgtCurveAreaXY( int nId, double* pdArea)
|
||||
|
||||
Reference in New Issue
Block a user