GMModelInterfaces Interface CATICGMIntersectionSurSur

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface CATICGMIntersectionSurSur

Class defining the operator of the intersection of two surfaces.

The operator outputs the isolated solutions (points, curves) and the overlapping solutions (surfaces).


Method Index


o BeginningCurve()
Initializes the iterator of the solution curves of this CATICGMIntersectionSurSur operator.
o BeginningPoint()
Initializes the iterator of the resulting points.
o BeginningSurface()
Initializes the iterator of the solution surfaces.
o GetCartesianPoint()
Creates the next solution point of this CATICGMIntersectionSurSur operator.
o GetCurve()
Creates the next solution curve of this CATICGMIntersectionSurSur operator.
o GetEdgeCurve()
Creates the next solution curve as an edge curve.
o GetEdgeCurve(CATPointOnEdgeCurve*&,CATPointOnEdgeCurve*&)
Creates the next solution curve as an edge curve.
o GetNumberOfCurves()
Returns the number of solution curves.
o GetNumberOfPoints()
Returns the number of solution points.
o GetNumberOfSurfaces()
Returns the number of solution surfaces.
o GetPCurve(CATLONG32)
Creates the next solution curve as a CATPCurve pointer.
o GetPCurve(CATSurface*)
Creates the next solution curve of this CATICGMIntersectionSurSur operator.
o GetPointOnSurface(CATSurface*)
Creates the next solution point on a surface of this CATICGMIntersectionSurSur operator.
o GetSignatureOn(CATSurface*)
Returns the signature of the intersection edge with regards to the surface normals.
o GetSurParam(CATSurParam&,CATSurParam&)
Retrieves the parameters on each surface of the next solution point of this CATICGMIntersectionSurSur operator.
o GetSurfaceBoundaries(CATSurface*,CATIntersectionOrientation**,CATIntersectionOrientation*)
Returns the boundaries of the next solution surface.
o GetSurfaceBoundaries(CATIntersectionOrientation**,CATIntersectionOrientation*,CATIntersectionOrientation*)
Returns the boundaries of the next solution surface.
o NextCurve()
Skips to the next solution curve of this CATICGMIntersectionSurSur operator.
o NextPoint()
Skips to the next solution point of this CATICGMIntersectionSurSur operator.
o NextSurface()
Skips to the next solution surface of this CATICGMIntersectionSurSur operator.
o SetLimits(CATSurLimits*,CATSurLimits*)
Modifies the surface domains to take into account for this CATICGMIntersectionSurSur operator (ADVANCED mode).

Methods


o BeginningCurve
public virtual BeginningCurve()
Initializes the iterator of the solution curves of this CATICGMIntersectionSurSur operator.
By default, the initialization is performed once the operator runs, and this is therefore only used to read the solutions again.
o BeginningPoint
public virtual BeginningPoint()
Initializes the iterator of the resulting points.
By default, the initialization is performed once the operator runs, and this is therefore only used to read the solutions again.
o BeginningSurface
public virtual BeginningSurface()
Initializes the iterator of the solution surfaces.
By default, the initialization is performed once the operator runs, and this is therefore only used to read the solutions again.
o GetCartesianPoint
public virtual GetCartesianPoint()
Creates the next solution point of this CATICGMIntersectionSurSur operator.
Returns:
The pointer to the created point. A new point is created each time this method is called. If you do not want to keep the created point, use the method.
o GetCurve
public virtual GetCurve()
Creates the next solution curve of this CATICGMIntersectionSurSur operator.
Returns:
The pointer to the created curve. A new curve is created each time this method is called. If you do not want to keep the created curve, use the method.
o GetEdgeCurve
public virtual GetEdgeCurve()
Creates the next solution curve as an edge curve.
Returns:
The pointer to the created edge curve, composed of a part of the two curves lying on each surface. A new curve is created each time this method is called. If you do not want to keep the created curve, use the method.
o GetEdgeCurve
public virtual GetEdgeCurve( oP1,
oP2)
Creates the next solution curve as an edge curve.
Parameters:
oP1
The pointer to the created point representing the first extremity of the solution curve. A new point is created each time this method is called. If you do not want to keep the created point, use the
method.
oP2
The pointer to the created point representing the last extremity of the solution curve. A new point is created each time this method is called. If you do not want to keep the created point, use the
method.
Returns:
The pointer to the created edge curve, composed of a part of the two curves lying on each surface. A new curve is created each time this method is called. If you do not want to keep the created curve, use the method.
o GetNumberOfCurves
public virtual GetNumberOfCurves()
Returns the number of solution curves.
Returns:
The number of solutions.
o GetNumberOfPoints
public virtual GetNumberOfPoints()
Returns the number of solution points.
Returns:
The number of solutions.
o GetNumberOfSurfaces
public virtual GetNumberOfSurfaces()
Returns the number of solution surfaces.
Returns:
The number of solutions.
o GetPCurve
public virtual GetPCurve( iIndexOperand)
Creates the next solution curve as a CATPCurve pointer.
Creates the object if necessary.
Parameters:
iIndexOperand
0
on the first surface operand
1
on the second surface operand
o GetPCurve
public virtual GetPCurve( iSurface)
Creates the next solution curve of this CATICGMIntersectionSurSur operator.
Parameters:
iSurface
The pointer to the surface on which the curve is created.
Returns:
The pointer to the created curve on surface. A new curve is created each time this method is called. If you do not want to keep the created curve, use the method.
o GetPointOnSurface
public virtual GetPointOnSurface( iSurface)
Creates the next solution point on a surface of this CATICGMIntersectionSurSur operator.
Parameters:
iSurface
The pointer to one of the intersecting surface.
Returns:
The pointer to the created point on surface. A new point is created each time this method is called. If you do not want to keep the created point, use the method.
o GetSignatureOn
public virtual GetSignatureOn( iSurface)
Returns the signature of the intersection edge with regards to the surface normals.
Parameters:
iSurface
The pointer to the surface (first or second operand) for which the signature is returned.
Returns:
The signature on iSurface such that: Let the natural way of the intersection edge at the starting point being such that the tangent at this point has the same direction as the vector product of the normals of each surface.
Consider that the surface normal represents the outside of the matter delimited by a surface. A positive signature implies that the resulting matter of the intersection is on the edge left.
CATIntersectionSignPositive
The resulting matter of the intersection is on the edge left.
CATIntersectionSignNegative
The resulting matter of the intersection is on the edge right.
o GetSurParam
public virtual GetSurParam( ioSurParam1,
ioSurParam2)
Retrieves the parameters on each surface of the next solution point of this CATICGMIntersectionSurSur operator.
Parameters:
ioSurParam1
The parameter on the first surface.
ioSurParam2
The parameter on the second surface.
o GetSurfaceBoundaries
public virtual GetSurfaceBoundaries( iSurface,
oListOfPCurvesOrientation= NULL,
oContourOrientation= NULL)
Returns the boundaries of the next solution surface.
The boundaries are given on one input surface.
Parameters:
iSurface
The pointer to the surface on which the curves are defined.
oListOfPCurvesOrientation
The array of pointers to the relative orientation of each PCurve with respect to the loop. If NULL, this is not output. This array is allocated by the method, you have to delete it after use.
Legal values:
CATIntersectionOrientationOpposite
The orientation of the curve and the loop are opposite.
CATIntersectionOrientationSame
The loop and the curve have the same orientation.
oContourOrientation
The relative orientation of the loop generated by the CATPCurves and iSurface. If NULL, this is not output.
Legal values:
CATIntersectionOrientationOpposite
The orientation of iSurface and the loop are opposite.
CATIntersectionOrientationSame
iSurface and the loop have the same orientation.
Returns:
The list of the curves defining the boundary on iSurface.
o GetSurfaceBoundaries
public virtual GetSurfaceBoundaries( oListOfPCurvesOrientation,
oContourOrientation1,
oContourOrientation2)
Returns the boundaries of the next solution surface.
The boundaries are given on both input surfaces.
Parameters:
oListOfPCurvesOrientation
The array of pointers to the relative orientation of each PCurve (on the first input surface, then on the second input surface) with respect to the loop. If NULL, this is not output. This array is allocated by the method, you have to delete it after use.
Legal values:
CATIntersectionOrientationOpposite
The orientation of the curve and the loop are opposite.
CATIntersectionOrientationSame
The loop and the curve have the same orientation.
oContourOrientation1
The relative orientation of the loop generated by the CATPCurves and the first input surface. If NULL, this is not output.
Legal values:
CATIntersectionOrientationOpposite
The orientation of the first input surface and the loop are opposite.
CATIntersectionOrientationSame
The first input surface and the loop have the same orientation.
oContourOrientation2
The relative orientation of the loop generated by the CATPCurves and the second input surface. If NULL, this is not output.
Legal values:
CATIntersectionOrientationOpposite
The orientation of the second input surface and the loop are opposite.
CATIntersectionOrientationSame
The second input surface and the loop have the same orientation.
Returns:
The list of the edge curves defining the boundary, each edge curve representing the PCurves on each input surface.
o NextCurve
public virtual NextCurve()
Skips to the next solution curve of this CATICGMIntersectionSurSur operator.
After BeginningCurve, it skips to the first curve.
Returns:
The existence of the next solution.
Legal values:
TRUE
if there is a solution curve
FALSE
no more solution curve.
o NextPoint
public virtual NextPoint()
Skips to the next solution point of this CATICGMIntersectionSurSur operator.
After BeginningPoint, it skips to the first point.
Returns:
The existence of the next solution.
Legal values:
TRUE
if there is a solution point
FALSE
no more solution point.
o NextSurface
public virtual NextSurface()
Skips to the next solution surface of this CATICGMIntersectionSurSur operator.
After BeginningSurface, it skips to the first surface.
Returns:
The existence of the next solution.
Legal values:
TRUE
if there is a solution surface
FALSE
no more solution surface.
o SetLimits
public virtual SetLimits( iNewLimitsForSurface1,
iNewLimitsForSurface2)
Modifies the surface domains to take into account for this CATICGMIntersectionSurSur operator (ADVANCED mode).
It does not change the current surface limitations.
Parameters:
iNewLimitsForSurface1
The pointer to the new domain of the first surface. If NULL, the current limitation of the first curve is used.
iNewLimitsForSurface2
The pointer to the new domain of the second surface. If NULL, the current limitation of the second curve is used.

This object is included in the file: CATICGMIntersectionSurSur.h
If needed, your Imakefile.mk should include the module: CATGMModelInterfaces

Copyright © 1999-2015, Dassault Systèmes. All rights reserved.