GMOperatorsInterfaces Interface CATICGMTopFaceReplaceSurface
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATICGMTopFaceReplaceSurface
Class defining the operator which replaces the surfaces of faces in a body with the given surfaces.
The CATICGMTopFaceReplaceSurface operator follows the global frame of the topological operators
and satisfies the smart mechanism: the input bodies are not modified. A new resulting body
is created, possibly sharing data with the input body.
- A CATICGMTopFaceReplaceSurface operator is created with the CATCreateFaceReplaceSurfaceOperator global function:
It must be directly released with the Release method after use. It is not streamable.
- Options can be set with the SetXxx methods, before
calling the operator's Run method. In particular, an optimized mode
allows you to do some local operations in union mode.
- In both cases, the result is accessed with the GetResult method. If you do not want
to keep the resulting body, use the method to remove it from the geometry factory.
Method Index
- o
ReplaceWith(CATVertex*,CATMathPoint&)
- Specifies a new target point for a given vertex in the input body.
- o
ReplaceWith(CATFace*,CATSurface*,CATSurLimits&,CATOrientation)
- Specifies the face in the input body whose surface should be replaced in the result body.
- o
ReplaceWith(CATEdge*,CATEdgeCurve*,CATCrvLimits&,CATOrientation)
- Specifies the edge in the input body whose edge curve should be replaced in the result body.
- o
SetLaydownEdge(CATEdge*,CATCurve*,CATCrvLimits&)
- Specifies the edge in the input body whose edge curve should be replaced in the result body.
- o
TransformWith(CATLISTP(CATFace)&,CATMathTransformation&)
- Method to call in order to specify the tansformation to apply to a list of faces
in the input body.
- o
TransformWith(CATLISTP(CATEdge)&,CATMathTransformation&)
- Method to call in order to specify the tansformation to apply to a list of edges in the input body.
Methods
o ReplaceWith
public virtual ReplaceWith( | | iOldVertex, |
| | iTargetPoint) |
-
Specifies a new target point for a given vertex in the input body.
This method is optionnal, but is required for some special cases where all adjacent
new EdgeCurves are tangent, and so the new point location can't be computed without
external information.
- Parameters:
-
- iOldVertex
- The pointer of an existing vertex in the input body.
- iNewTargetPoint
- The location of the new vertex in the result body. This MathPoint should
be close enough (less than Tolerance) to all replacing surfaces of the
faces bordering iOldVertex.
o ReplaceWith
public virtual ReplaceWith( | | iOldFace, |
| | iNewSurf, |
| | iWorkingDomain, |
| | iOrientation) |
-
Specifies the face in the input body whose surface should be replaced in the result body.
- Parameters:
-
- iOldFace
- The pointer of an existing face in the input body.
- iNewSurf
- The pointer to the replacing surface for iOldFace.
If iNewSurf is a canonical surface, it may be replaced by an equivalent
surface (for closure management purpose).
- iWorkingDomain
- The limits of iNewSurf that are useful for the operation
These limits have to correctly match with its use in the result body, but
the operator may perform an extrapolation on the surface if necessary.
- iOrientation
- The orientation of the face in the new Body with respect to the new surface.
o ReplaceWith
public virtual ReplaceWith( | | iOldEdge, |
| | iNewEdgeCurve, |
| | iWorkingDomain, |
| | iOrientation) |
-
Specifies the edge in the input body whose edge curve should be replaced in the result body.
- Parameters:
-
- iOldEdge
- The pointer of an existing edge in the input body.
- iNewEdgeCurve
- The pointer to the replacing CATEdgeCurve for iOldEdge. This new curve will
include only one PCurve on surfaces associated to the faces boundary.
iOldEdge
- iWorkingDomain
- The limits of iNewEdgeCurve that are useful for the operation.
These limits have to correctly match with its use in the result body, but
the operator may perform an extrapolation on the curve if necessary
- iOrientation
- The orientation of the edge in the new Body with respect to the new edge curve.
o SetLaydownEdge
public virtual SetLaydownEdge( | | iOldEdge, |
| | iNewCurve, |
| | iWorkingDomain) |
-
Specifies the edge in the input body whose edge curve should be replaced in the result body.
This method works for isotopological configurations (when there is a bijection between the cells
of input and result body). It will have no effect otherwise.
- Parameters:
-
- iOldEdge
- The pointer of an existing edge in the input body. This edge must border a face with a new
surface specfied by the ReplaceWith method. An error is thrown if not.
- iCurve
- The pointer to the CATCurve to laydown in order to compute the new EdgeCurve
for iOldEdge.
- iWorkingDomain
- The limits of iCurve that are useful for the operation.
These limits have to correctly match with its use in the result body, but
the operator may perform an extrapolation on the curve if necessary
This method is not compatible with the TransformWith, SetSameSurfacesParametrization
and ReplaceWith(iNewEdgeCurve) methods.
o TransformWith
public virtual TransformWith( | | iListFaces, |
| | iTransfo) |
-
Method to call in order to specify the tansformation to apply to a list of faces
in the input body.
An error is thrown if the same CATFace is given with several Transformations.
An error is thrown if the following other methods are called with this one :
- All ReplaceWith methods
- SetCanonicalTangentEdge
- SetSameSurfacesParametrization
- Parameters:
-
- iListFaces
- The list of faces to be tranformed.
- iTransfo
- The 3D trandformation to apply to theses faces.
o TransformWith
public virtual TransformWith( | | iListEdges, |
| | iTransfo) |
-
Method to call in order to specify the tansformation to apply to a list of edges in the input body.
- Parameters:
-
- iListEdges
- The list of edges to be tranformed.
- iTransfo
- The 3D trandformation to apply to theses edges.
This object is included in the file: CATICGMTopFaceReplaceSurface.h
If needed, your Imakefile.mk should include the module: CATGMOperatorsInterfaces
Copyright © 1999-2015, Dassault Systèmes. All rights reserved.