GeometricObjects Interface CATEdgeCurve
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATEdgeCurve
Interface defining a curve representing several other curves.
Role: A CATEdgeCurve is the geometry of a topological edge. As an edge can
bound several faces (with different geometry),
a CATEdgeCurve is a curve that presents a common behavior for
several curves.
The aggregation of the CATPCurves resulting of an intersection
leads to a CATIntCurve, the aggregation of identical CATCurves
leads to a CATSimCurve and the aggregation of CATCurves with different limits
or parameterizations leads to a
CATMergedCurve. To create a CATMergedCurve, use the operator.
The aggregation is a recursive notion, and you can aggregate
CATEdgeCurves.
One aggregated curve plays a special role: its manages the evaluations and is called the reference curve.
Method Index
- o
Compare(CATLONG32,CATCurve*[],CATCrvParam[],CATCrvParam&,CATPositiveLength*)
- Checks whether points can be merged within the same CATPointOnEdgeCurve.
- o
GetEquivalentParam(CATLONG32,CATCurve*[],CATCrvParam[],CATCrvParam&)
- Returns the parameter on this EdgeCurve corresponding to the point defined by
parameters on its components.
- o
GetEquivalentPoint(CATCrvParam&,CATCurve*,CATCurve*,CATCrvParam&,short)
- Reports a point from a curve to another one.
- o
GetMaxGap()
- Returns a length larger than the distance between any couple of corresponding evaluated
points on all subcurves.
- o
GetRefCurve()
- Returns the reference curve of this CATEdgeCurve.
- o
GetRelativeOrientation(CATCurve*)
- Retrieves the parametric orientation of a CATCurve with regards to the
orientation of this CATEdgeCurve.
- o
GetSharpness(CATPCurve*,CATPCurve*,CATGeoContinuity*,CATGeoConvexity*)
- Retrieves the sharpness between the underlying surfaces of two CATPCurves.
- o
Next(CATCurve*)
- Scans the CATCurves represented by this CATEdgeCurve.
- o
NextThru(CATCurve*)
-
- o
SetSharpness(CATPCurve*,CATPCurve*,CATGeoContinuity,CATGeoConvexity)
- Imposes the sharpness between the underlying surfaces of two CATPCurves.
Enumerated Type Index
- o
CATCompareDiagnostic
- The confusion diagnosis of a point on an CATEdgeCurve.
Methods
o Compare
public virtual Compare( | const | iNbOfCurves, |
| const | iCurves, |
| const | iParams, |
| | ioSuggestedParam, |
| | ioGap | = NULL) |
-
Checks whether points can be merged within the same CATPointOnEdgeCurve.
- Parameters:
-
- iNbOfCurves
- The number of CATCurves.
- iCurves[]
- The array of iNbOfCurves CATCurve pointers.
- iParams[]
- The corresponding parameters of the points to merge.
- ioSuggestedParam
- The parameter of the corresponding point on this CATEdgeCurve.
- ioGap
- The maximum distance between the points. If NULL, this distance is not output.
- Returns:
- The diagnosis of confusion.
o GetEquivalentParam
public virtual GetEquivalentParam( | const | iNbOfCurves, |
| const | iCurves, |
| const | iParams, |
| | ioCalcParam) |
-
Returns the parameter on this EdgeCurve corresponding to the point defined by
parameters on its components.
- Parameters:
-
- iNbOfCurves
- The number of CATCurves.
- iCurves[]
- The array of iNbOfCurves CATCurve pointers.
- iParams[]
- The corresponding parameters on the CATCurves.
- ioCalcParam
- The parameter of the point on this CATEdgeCurve.
o GetEquivalentPoint
public virtual GetEquivalentPoint( | const | iParamOnCurrentCurve, |
| const | iCurrentCurveOrEdgeCurve, |
| const | iEquivalentCurve, |
| | ioParamOnEquivalentCurve, |
| | iConverge | =1) |
-
Reports a point from a curve to another one.
- Parameters:
-
- iParamOnCurrentCurve
- The parameter on iCurrentCurveOrEdgeCurve.
- iCurrentCurveOrEdgeCurve
- The initial CATCurve.
- iEquivalentCurve
- The CATCurve on which the point is to be expressed.
- ioParamOnEquivalentCurve
- The equivalent parameter on iEquivalentCurve.
- iConverge
- The type of computation.
Legal values:
- 1
- An exact computation.
- 0
- An approximated (and faster) computation.
o GetMaxGap
public virtual GetMaxGap( | ) |
-
Returns a length larger than the distance between any couple of corresponding evaluated
points on all subcurves.
- Returns:
- The gap between the curves.
If the gap is 0.,
returns the same value whatever the subcurve it applies to.
The gap of an CATIntCurve is always 0., because the evaluators always return an exact value in this case.
However, the equation of a CATIntCurve may not return an exact solution.
o GetRefCurve
public virtual GetRefCurve( | ) |
-
Returns the reference curve of this CATEdgeCurve.
The reference curve manages the evaluations.
- Returns:
- A pointer to the curve of this CATEdgeCurve.
o GetRelativeOrientation
public virtual GetRelativeOrientation( | const | iCurrentCurve) |
-
Retrieves the parametric orientation of a CATCurve with regards to the
orientation of this CATEdgeCurve.
- Parameters:
-
- iCurrentCurve
- A pointer to a curve of this CATEdgeCurve.
- Returns:
- The relative orientation
- 1
- this and iCurrentCurve have the same orientation.
- -1
- this and iCurrentCurve have an opposite orientation.
o GetSharpness
public virtual GetSharpness( | const | iC1, |
| const | iC2, |
| | ioContinuity, |
| | ioConvexity | =0) |
-
Retrieves the sharpness between the underlying surfaces of two CATPCurves.
- Parameters:
-
- iC1
- A pointer to the first CATPCurve.
- iC2
- A pointer to the second CATPCurve.
- ioContinuity
- The tangential continuity.
- ioConvexity
- The tangential convexity. If NULL, this argument is not written.
o Next
public virtual Next( | const | iCurrentSubElement) |
-
Scans the CATCurves represented by this CATEdgeCurve.
- Parameters:
-
- iCurrentSubElement
- The pointer to the CATCurve from which the search is initialized, may
be NULL for retrieving the first CATCurve.
- Returns:
- The pointer to the next CATCurve of the aggregation. Remember that a
CATEdgeCurve is also a CATCurve.
Sample: Search of all CATCurves of a CATEdgeCurve.
const CATCurve * Current=NULL
while (Current = MyEdgeCurve->Next(Current) )
{ ... process Current ... }
o NextThru
public virtual NextThru( | const | iCurrentSubElement) |
-
- Deprecated:
- V5R12 CATEdgeCurveIterator
Recursively scans the CATCurves of this CATEdgeCurve, without returning
the imbedded CATEdgeCurves.
- Parameters:
-
- iCurrentSubElement
- The pointer to the CATCurve from which the search is initialized, may
be NULL for retrieving the first CATCurve.
- Returns:
- The pointer to the next CATCurve (not being a CATEdgeCurve) of the aggregation.
o SetSharpness
public virtual SetSharpness( | const | iC1, |
| const | iC2, |
| const | iContinuity, |
| const | iConvexity | = CATUnknownConvexity) |
-
Imposes the sharpness between the underlying surfaces of two CATPCurves.
- Parameters:
-
- iC1
- A pointer to the first CATPCurve.
- iC2
- A pointer to the second CATPCurve.
- iContinuity
- The tangential continuity to impose.
- iConvexity
- The tangential convexity to impose.
Enumerated Types
o CATCompareDiagnostic
-
enum CATCompareDiagnostic {
Equal,
Similar,
Distinct
}
The confusion diagnosis of a point on an CATEdgeCurve.
- Parameters:
-
- Equal
- Same geometrical points with same parameter.
- Similar
- Same geometrical points with different parameters.
- Distinct
- Distinct geometrical points.
This object is included in the file: CATEdgeCurve.h
If needed, your Imakefile.mk should include the module: CATGMGeometricInterfaces
Copyright © 1999-2014, Dassault Systèmes. All rights reserved.