All Frameworks Class Hierarchy This Framework Previous Next Indexes
GeometricOperators Class CATLocalAnalysis2D
Mathematics.CATCGMVirtual
|
+---CATLocalAnalysis2D
Usage: you must use this class as is. You should never derive it.
public class CATLocalAnalysis2D
Class defining the local analysis on a point of a CATSurface.
It performs curvature, torsion,
main normal and binormal on a point of a CATSurface. This class is not streamable.
The point where the analysis is done can be changed by CATLocalAnalysis2D.SetParam.
Constructor and Destructor Index
- o
CATLocalAnalysis2D(CATLocalAnalysis2D&)
- Copy Constructor.
- o
CATLocalAnalysis2D(CATSoftwareConfiguration*,CATSurface*,CATSurParam&)
- Creates a local analyzer on a point of a CATSurface.
- o
CATLocalAnalysis2D(CATSurface*,CATSurParam&)
- Creates a local analyzer on a point of a CATSurface.
- o
~CATLocalAnalysis2D()
- Destructor.
Method Index
- o
GetCurvatureAlongDirection(double&,double&)
- Returns the curvature along a direction of the surface.
- o
GetFirstFundamentalForm(double&,double&,double&)
- Retrieves the first fondamental form at the point of this CATLocalAnalysis2D.
- o
GetGaussianCurvature()
- Returns the gaussian curvature at the point of this CATLocalAnalysis2D.
- o
GetMeanCurvature()
- Returns the mean curvature at the point of this CATLocalAnalysis2D.
- o
GetMinMaxCurvature(double&,double&)
- Returns the min and max curvatures at the point of this CATLocalAnalysis2D.
- o
GetMinMaxCurvaturesAndDirections(double&,double&,CATMathVector2D&,CATMathVector2D&,CATMathVector&,CATMathVector&)
- Returns the min and max curvatures at the point of this CATLocalAnalysis2D,
along with the associated principal curvature directions.
- o
GetSecondFundamentalForm(double&,double&,double&)
- Retrieves the second fondamental form at the point of this CATLocalAnalysis2D.
- o
IsARegularParam()
- Tests whether the point of this CATLocalAnalysis2D is regular.
- o
ProjectVector(CATMathVector&,double&,double&)
- Returns the 2D coordinates of the projection of the 3d vector iVector on the
surface.
- o
SetParam(CATSurParam&)
- Modifies the point where this CATLocalAnalysis2D is performed.
- o
operator=(CATLocalAnalysis2D&)
- Assignment operator.
Constructor and Destructor
o CATLocalAnalysis2D
-
Copy Constructor.
o CATLocalAnalysis2D
-
Creates a local analyzer on a point of a CATSurface.
- Parameters:
-
- iConfig
- The level of code (Versionning).
- iSupport
- The surface on which the analysis is done.
- iPointToAnalyze
- The parameter on iSupport of the point to analyze.
o CATLocalAnalysis2D
-
Creates a local analyzer on a point of a CATSurface.
- Parameters:
-
- iSupport
- The surface on which the analysis is done.
- iPointToAnalyze
- The parameter on iSupport of the point to analyze.
o ~CATLocalAnalysis2D
public virtual ~CATLocalAnalysis2D( | ) |
-
Destructor.
Methods
o GetCurvatureAlongDirection
public virtual double GetCurvatureAlongDirection( | const double& | iX, |
| const double& | iY) |
-
Returns the curvature along a direction of the surface.
- Parameters:
-
- iX
- The first coordinate of the direction in the space of the surface.
- iY
- The second coordinate of the direction in the space of the surface.
- Returns:
- The curvature.
C(iX,iY) = (L.iX^2+2M.iX.iY+N.iY^2) / (E.iX^2+2F.iX.iY+G.iY^2), where L,M,N are
the coordinates of the second fundamental form and E, F, G the coordinates of the
first fundamental form
o GetFirstFundamentalForm
public virtual void GetFirstFundamentalForm( | double& | ioE, |
| double& | ioF, |
| double& | ioG) |
-
Retrieves the first fondamental form at the point of this CATLocalAnalysis2D.
- Parameters:
-
- ioE
- The first coordinate: ioE = FirstDerivU.Norm() ^ 2, where FirstDerivU is
the first derivative with regards to the first parameter.
- ioF
- The second coordinate: ioF = FirstDerivU * FirstDerivV, where * is the dot product.
- ioE
- The third coordinate: ioG = FirstDerivV.Norm() ^ 2, where FirstDerivV is
the first derivative with regards to the second parameter.
o GetGaussianCurvature
public virtual double GetGaussianCurvature( | ) |
-
Returns the gaussian curvature at the point of this CATLocalAnalysis2D.
- Returns:
- The Gaussian curvature = Cmin*Cmax, where Cmin is the minium curvature
and Cmax the maximum curvature at the point of this analysis.
o GetMeanCurvature
public virtual double GetMeanCurvature( | ) |
-
Returns the mean curvature at the point of this CATLocalAnalysis2D.
- Returns:
- The mean curvature: = 0.5*(Cmin+Cmax) .
o GetMinMaxCurvature
public virtual void GetMinMaxCurvature( | double& | ioCmin, |
| double& | ioCmax) |
-
Returns the min and max curvatures at the point of this CATLocalAnalysis2D.
- Parameters:
-
- ioCmin
- The minimum curvature.
- ioCmax
- The maximum curvature: ioCmin < ioCmax.
.
o GetMinMaxCurvaturesAndDirections
-
Returns the min and max curvatures at the point of this CATLocalAnalysis2D,
along with the associated principal curvature directions.
The returned 3d and 2d vectors represent directions: no assumption can be made
regarding the orientation of the vectors. Likewise, the directions are unspecified
at umbilical points (when min curvature = max curvature).
- Parameters:
-
- ioCmin
- The minimum curvature.
- ioCmax
- The maximum curvature: ioCmin < ioCmax.
- ioDirMin2D
- The principal curvature direction associated to the minimal curvature,
expressed as a linear combination of the partial derivatives.
- ioDirMax2D
- The principal curvature direction associated to the maximal curvature.
expressed as a linear combination of the partial derivatives.
- ioDirMin3D
- The principal curvature direction associated to the minimal curvature,
expressed in 3D.
- ioDirMax3D
- The principal curvature direction associated to the maximal curvature,
expressed in 3D.
.
o GetSecondFundamentalForm
public virtual void GetSecondFundamentalForm( | double& | ioL, |
| double& | ioM, |
| double& | ioN) |
-
Retrieves the second fondamental form at the point of this CATLocalAnalysis2D.
Let H = (FirstDerivU ^ FirstDerivV) / (FirstDerivU ^ FirstDerivV).Norm().
- Parameters:
-
- ioL
- The first coordinate: ioL = SecondDerivU2 * H, where SecondDerivU2 is
the second derivative with regards to the first parameter and * the dot product.
- ioM
- The second coordinate: ioM = SecondDerivUV * H, where SecondDerivUV is
the second derivative with regards to the first parameter and second parameters,
and * the dot product.
- ioN
- The third coordinate: ioN = SecondDerivU2 * H, where SecondDerivV2 is
the second derivative with regards to the second parameter and * the dot product.
o IsARegularParam
-
Tests whether the point of this CATLocalAnalysis2D is regular.
A point is non regular when the partial derivative of one of its coordinate
is null.
- Returns:
- The result of the test.
Legal values:
- 0
- if it is not regular
- 1
- if it is regular
o ProjectVector
-
Returns the 2D coordinates of the projection of the 3d vector iVector on the
surface.
These coordinates are such that: iVector = ioX*FirstDerivU + ioY*FirstDerivV,
where FirstDerivU and FirstDerivV are the first derivatives with respect to
the first and second surface parameters, and * is the dot product.
- Parameters:
-
- ioX
- The coordinate along the first derivative with regards to the first surface parameter.
- ioY
- The coordinate along the first derivative with regards to the second surface parameter.
- Returns:
- The regularity of the point.
- 0
- if it is not regular (ioX and ioY are not calculated)
- 1
- if it is regular
o SetParam
public virtual void SetParam( | CATSurParam& | iNewParamToAnalyze) |
-
Modifies the point where this CATLocalAnalysis2D is performed.
The analysis is automatically done.
- Parameters:
-
- iNewParamToAnalyze
- The parameter of the new point to analyze.
o operator=
-
Assignment operator.
This object is included in the file: CATLocalAnalysis2D.h
If needed, your Imakefile.mk should include the module: CATGeometricOperators