Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
LocalAnalysis_CurveContinuity Class Reference

This class gives tools to check local continuity C0 C1 C2 G1 G2 between two points situated on two curves. More...

#include <LocalAnalysis_CurveContinuity.hxx>

Public Member Functions

 LocalAnalysis_CurveContinuity (const occ::handle< Geom_Curve > &Curv1, const double u1, const occ::handle< Geom_Curve > &Curv2, const double u2, const GeomAbs_Shape Order, const double EpsNul=0.001, const double EpsC0=0.001, const double EpsC1=0.001, const double EpsC2=0.001, const double EpsG1=0.001, const double EpsG2=0.001, const double Percent=0.01, const double Maxlen=10000)
 -u1 is the parameter of the point on Curv1 -u2 is the parameter of the point on Curv2 -Order is the required continuity: GeomAbs_C0 GeomAbs_C1 GeomAbs_C2 GeomAbs_G1 GeomAbs_G2
 
bool IsDone () const
 
LocalAnalysis_StatusErrorType StatusError () const
 
GeomAbs_Shape ContinuityStatus () const
 
double C0Value () const
 
double C1Angle () const
 
double C1Ratio () const
 
double C2Angle () const
 
double C2Ratio () const
 
double G1Angle () const
 
double G2Angle () const
 
double G2CurvatureVariation () const
 
bool IsC0 () const
 
bool IsC1 () const
 
bool IsC2 () const
 
bool IsG1 () const
 
bool IsG2 () const
 

Detailed Description

This class gives tools to check local continuity C0 C1 C2 G1 G2 between two points situated on two curves.

Constructor & Destructor Documentation

◆ LocalAnalysis_CurveContinuity()

LocalAnalysis_CurveContinuity::LocalAnalysis_CurveContinuity ( const occ::handle< Geom_Curve > & Curv1,
const double u1,
const occ::handle< Geom_Curve > & Curv2,
const double u2,
const GeomAbs_Shape Order,
const double EpsNul = 0.001,
const double EpsC0 = 0.001,
const double EpsC1 = 0.001,
const double EpsC2 = 0.001,
const double EpsG1 = 0.001,
const double EpsG2 = 0.001,
const double Percent = 0.01,
const double Maxlen = 10000 )

-u1 is the parameter of the point on Curv1 -u2 is the parameter of the point on Curv2 -Order is the required continuity: GeomAbs_C0 GeomAbs_C1 GeomAbs_C2 GeomAbs_G1 GeomAbs_G2

-EpsNul is used to detect a vector with null magnitude (in mm)

-EpsC0 is used for C0 continuity to confuse two points (in mm)

-EpsC1 is an angular tolerance in radians used for C1 continuity to compare the angle between the first derivatives

-EpsC2 is an angular tolerance in radians used for C2 continuity to compare the angle between the second derivatives

-EpsG1 is an angular tolerance in radians used for G1 continuity to compare the angle between the tangents

-EpsG2 is an angular tolerance in radians used for G2 continuity to compare the angle between the normals

  • percent: percentage of curvature variation (unitless) used for G2 continuity
  • Maxlen is the maximum length of Curv1 or Curv2 in meters used to detect nul curvature (in mm)

the constructor computes the quantities which are necessary to check the continuity in the following cases:

case C0

  • the distance between P1 and P2 with P1=Curv1 (u1) and P2=Curv2(u2)

case C1

  • the angle between the first derivatives dCurv1(u1) dCurv2(u2) -----— and ------— du du
  • the ratio between the magnitudes of the first derivatives

the angle value is between 0 and PI/2

case C2

  • the angle between the second derivatives 2 2 d Curv1(u1) d Curv2(u2)
    2 2 du du

the angle value is between 0 and PI/2

  • the ratio between the magnitudes of the second derivatives

case G1

the angle between the tangents at each point

the angle value is between 0 and PI/2

case G2

-the angle between the normals at each point

the angle value is between 0 and PI/2

  • the relative variation of curvature:

|curvat1-curvat2|

1/2 (curvat1*curvat2)

where curvat1 is the curvature at the first point and curvat2 the curvature at the second point

Member Function Documentation

◆ C0Value()

double LocalAnalysis_CurveContinuity::C0Value ( ) const

◆ C1Angle()

double LocalAnalysis_CurveContinuity::C1Angle ( ) const

◆ C1Ratio()

double LocalAnalysis_CurveContinuity::C1Ratio ( ) const

◆ C2Angle()

double LocalAnalysis_CurveContinuity::C2Angle ( ) const

◆ C2Ratio()

double LocalAnalysis_CurveContinuity::C2Ratio ( ) const

◆ ContinuityStatus()

GeomAbs_Shape LocalAnalysis_CurveContinuity::ContinuityStatus ( ) const

◆ G1Angle()

double LocalAnalysis_CurveContinuity::G1Angle ( ) const

◆ G2Angle()

double LocalAnalysis_CurveContinuity::G2Angle ( ) const

◆ G2CurvatureVariation()

double LocalAnalysis_CurveContinuity::G2CurvatureVariation ( ) const

◆ IsC0()

bool LocalAnalysis_CurveContinuity::IsC0 ( ) const

◆ IsC1()

bool LocalAnalysis_CurveContinuity::IsC1 ( ) const

◆ IsC2()

bool LocalAnalysis_CurveContinuity::IsC2 ( ) const

◆ IsDone()

bool LocalAnalysis_CurveContinuity::IsDone ( ) const

◆ IsG1()

bool LocalAnalysis_CurveContinuity::IsG1 ( ) const

◆ IsG2()

bool LocalAnalysis_CurveContinuity::IsG2 ( ) const

◆ StatusError()

LocalAnalysis_StatusErrorType LocalAnalysis_CurveContinuity::StatusError ( ) const

The documentation for this class was generated from the following file: