GMModelInterfaces Interface CATEdge

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


interface CATEdge

Interface representing a topological edge.

An edge is a topological cell which geometry is an edge-curve. It is bounded by vertices.
Edges can be used in the following ways:


In order to be valid, the vertices of the edge must be different. An edge is oriented with regards to the underlying edge-curve:
CATOrientationNegative
The start vertex is the one with the larger parameter, and the end vertex is the one with the smaller parameter.
CATOrientationPositive
The start vertex is the one with the smaller parameter, and the end vertex is the one with the larger parameter.
CATOrientationUnknown
The cell orientation is not defined.

A CATEdge is created with the or methods and deleted with the method.


Method Index


o CalcLength()
o EvalGlobalSharpness(CATFace*,CATFace*,CATTopSharpness&,CATOrientation*,CATShell*,CATBoolean*)
o EvalSharpness(CATCrvParam&,CATFace*,CATFace*,CATTopSharpness&,CATOrientation*,CATShell*)
o EvalTangent(CATCrvParam&,CATMathVector&,CATBoolean)
Computes the tangent vector to this CATEdge at a given parameter.
o Get2DBoundingBox(CATFace*)
Returns the 2D bounding box of this CATEdge on the surface of the bounded face.
o GetCurve(CATOrientation*)
Returns the geometric edge-curve of this CATEdge.
o GetGeometryOnFace(CATFace*,CATSide,CATOrientation*,CATCrvParam*,CATCrvParam*)
Returns the geometry of this CATEdge with respect to an underlying CATFace.
o GetGlobalSharpness(CATTopData&,CATFace*,CATFace*,CATTopSharpness&,CATOrientation*,CATShell*,CATBoolean,CATBoolean,CATBoolean*,CATAngle)
Retrieves the global sharpness of this CATEdge.
o GetJunctionStatus()
Reads the edge junction status.
o GetLocalSharpness(CATTopData&,CATCrvParam&,CATFace*,CATFace*,CATTopSharpness&,CATOrientation*,CATShell*,CATAngle)
Computes the sharpness angle of this CATEdge at a given parameter on the edge curve.
o GetNextInLoop(CATSide,CATFace*,CATEdge**,CATSide*)
Retrieves the CATEdge which is right after this in its loop.
o GetPreviousInLoop(CATSide,CATFace*,CATEdge**,CATSide*)
Retrieves the CATEdge which is right before this CATEdge in its loop.
o GetSideOnFace(CATFace*)
Returns the matter side of this CATEdge with respect to a CATFace.
o GetVertices(CATVertex**,CATVertex**)
Returns the start and end vertices of this CATEdge.
o GetVerticesParamsOnEdgeCurve(CATCrvParam*,CATCrvParam*)
Retrieves the start and end point curve parameters of this CATEdge.
o GetVerticesPointsOnEdgeCurve(CATPointOnEdgeCurve**,CATPointOnEdgeCurve**)
Retrieves the start and end points on edge curve of this CATEdge.
o SetCurve(CATEdgeCurve*,CATOrientation)
Sets the geometric edge-curve of this CATEdge.
o SetGeometryOnFace(CATFace*,CATSide,CATPCurve*,CATPointOnEdgeCurve*,CATPointOnEdgeCurve*)
Sets the geometry of this CATEdge with respect to an underying face.
o SetGlobalSharpness(CATTopData&,CATFace*,CATFace*,CATGeoContinuity,CATGeoConvexity,CATShell*,CATAngle,CATBoolean,CATBoolean)
Defines the global sharpness of this CATEdge on the edge curve.
o SetJunctionStatus(CATTopData&,CATTopJunctionEdgeStatus)
Flags the edge junction status (No effect before V5R8)
o SetSharpness(CATFace*,CATFace*,CATGeoContinuity,CATGeoConvexity,CATShell*)
o SetSideOnFace(CATFace*,CATSide)
Sets the matter side of this CATEdge with respect to a CATFace.

Methods


o CalcLength
public virtual CalcLength()
Deprecated:
V5R15 Computes the length (between start and end vertex) of this CATEdge.
Returns:
The computed length.
o EvalGlobalSharpness
public virtual EvalGlobalSharpness( iFace1,
iFace2,
ioSharpness,
oOrientation=NULL,
iShellOwningTheTwoFaces=NULL,
oDefinedSharpness= NULL)
Deprecated:
V5R11 GetGlobalSharpness Retrieves the global sharpness of this CATEdge.
Parameters:
iFace1
The pointer to the one face bounded by this.
iFace2
The pointer to another face bounded by this.
ioSharpness
The sharpness related to 2 faces iFace1 and iFace2 bounded by the edge.
oOrientation
If no reference shell has been provided, and if the 2 faces have reversed orientations along the edge, then the first face will be used as a reference for the outer side. In this case, oOrientation indicates that second face has to be reversed or not.
iShellOwningTheTwoFaces
The pointer to a shell that owns the two faces. If NULL, the faces are supposed to belong to only one shell.
oDefinedSharpness
The way the sharpness has been filled out (stored or computed).
Legal values:
TRUE
if SetSharpness has been previously applied.
FALSE
geometric evaluation of sharpness.
If NULL, this argument is not filled out.
Throws:
If the sharpness is not constant along the edge.
o EvalSharpness
public virtual EvalSharpness( const iParamOnEdgeCurve,
iFace1,
iFace2,
ioSharpness,
oOrientation=NULL,
iShellOwningTheTwoFaces=NULL)
Deprecated:
V5R11 GetLocalSharpness Computes sharpness angle of this CATEdge at a given parameter on the edge curve.
Parameters:
iParamOnEdgeCurve
The parameter where to compute the tangent.
iFace1
The pointer to the one face bounded by this.
iFace2
The pointer to another face bounded by this.
ioSharpness
The sharpness related to 2 faces iFace1 and iFace2 bounded by the edge.
oOrientation
If no reference shell has been provided, and if the 2 faces have reversed orientations along the edge, then the first face will be used as a reference for the outer side. In this case, oOrientation indicates that second face has to be reversed or not.
iShellOwningTheTwoFaces
The pointer to a shell that owns the two faces. If NULL, the faces are supposed to belong to only one shell.
Throws:
If the edge bounds one of the faces twice (closed faces case). An other method with matter side specification will be available soon.
o EvalTangent
public virtual EvalTangent( const iParamOnEdgeCurve,
ioTangentVector,
iTgtNormalization=TRUE)
Computes the tangent vector to this CATEdge at a given parameter.
Parameters:
iParamOnEdgeCurve
The parameter where to compute the tangent.
ioTangentVector
The computed vector.
iTgtNormalization
The mode of normalization.
Legal values:
TRUE
if ioTangentVector must be normalized.
FALSE
otherwise.
Returns:
The diagnosis of the evaluation.
Legal values:
TRUE
if vector is non-zero
FALSE
otherwise.
o Get2DBoundingBox
public virtual Get2DBoundingBox( iBoundedFace)
Returns the 2D bounding box of this CATEdge on the surface of the bounded face.
Parameters:
iBoundedFace
The pointer to a face bounded by this.
Returns:
The computed bounding box.
o GetCurve
public virtual GetCurve( ioOrientation=NULL)
Returns the geometric edge-curve of this CATEdge.
Parameters:
ioOrientation
A pointer to the relative orientation with regards to the edge-curve. If NULL, the orientation is not filled out.
Returns:
The pointer to the geometry of this CATEdge.
o GetGeometryOnFace
public virtual GetGeometryOnFace( iBoundedFace,
iSide,
ioOrientation=NULL,
ioStartParam= NULL,
ioEndParam= NULL)
Returns the geometry of this CATEdge with respect to an underlying CATFace.
Parameters:
iBoundedFace
The pointer to a face bounded by this.
iSide
The matter side of this while bounding iBoundedFace.
ioOrientation
The orientation of this edge with regards to its geometry (a CATPCurve). If NULL, this is not filled out.
ioStartParam
The start limitation of the CATPCurve, always with regards to its own orientation: ioStartParam < ioEndParam. If NULL, this is not filled out.
ioEndParam
The end limitation of the CATPCurve. If NULL, this is not filled out.
Returns:
The pointer to the geometry as a CATPCurve.
o GetGlobalSharpness
public virtual GetGlobalSharpness( iTopData,
iFace1,
iFace2,
oSharpness,
oOrientation= NULL,
iShellOwningTheTwoFaces= NULL,
iComputeConvexity= TRUE,
iForceGeometricEvaluation= FALSE,
oStoredSharpness= NULL,
iMinSharpAngle= CATTopSharpAngle)
Retrieves the global sharpness of this CATEdge.
Parameters:
iTopData
The object defining the CATSoftwareConfiguration.
iFace1
The pointer to the one face bounded by this.
iFace2
The pointer to another face bounded by this.
ioSharpness
The sharpness related to 2 faces iFace1 and iFace2 bounded by the edge.
oOrientation
If no reference shell has been provided, and if the 2 faces have reversed orientations along the edge, then the first face will be used as a reference for the outer side. In this case, oOrientation indicates that second face has to be reversed or not.
iShellOwningTheTwoFaces
The pointer to a shell that owns the two faces. If NULL, the faces are supposed to belong to only one shell.
iComputeConvexity
Whether the convexity is computed for Sharp edges. If FALSE, iShellOwningTheTwoFaces can be set to NULL.
Legal values:
TRUE
the convexity is computed if the edge is Sharp.
FALSE
the convexity is not computed.
iForceGeometricEvaluation
If TRUE, a geometric evaluation is performed even if a value stored (with SetGlobalSharpness) if it exists.
Legal values:
TRUE
FALSE
oStoredSharpness
The way the sharpness has been filled out (stored or computed).
Legal values:
TRUE
if SetLocalSharpness has been previously applied.
FALSE
geometric evaluation of sharpness.
If NULL, this argument is not filled out.
iMinSharpAngle
Minimum (resp. maximum) angle value in rad for which the edge is declared Sharp (resp. Smooth).
Throws:
If no geometry evaluation could be properly performed.
o GetJunctionStatus
public virtual GetJunctionStatus()
Reads the edge junction status.
Returns:
The junction status of this CATEdge.
o GetLocalSharpness
public virtual GetLocalSharpness( iTopData,
const iParamOnEdgeCurve,
iFace1,
iFace2,
oSharpness,
oOrientation= NULL,
iShellOwningTheTwoFaces= NULL,
iMinSharpAngle= CATTopSharpAngle)
Computes the sharpness angle of this CATEdge at a given parameter on the edge curve.
Parameters:
iTopData
The object defining the CATSoftwareConfiguration.
iParamOnEdgeCurve
The parameter where to compute the tangent.
iFace1
The pointer to the one face bounded by this.
iFace2
The pointer to another face bounded by this.
ioSharpness
The sharpness related to 2 faces iFace1 and iFace2 bounded by the edge.
oOrientation
If no reference shell has been provided, and if the 2 faces have reversed orientations along the edge, then the first face will be used as a reference for the outer side. In this case, oOrientation indicates that second face has to be reversed or not.
iShellOwningTheTwoFaces
The pointer to a shell that owns the two faces. If NULL, the faces are supposed to belong to only one shell.
iMinSharpAngle
Minimum (resp. maximum) angle value in rad for which the edge is declared Sharp (resp. Smooth).
Throws:
If the edge bounds one of the faces twice (closed faces case). An other method with matter side specification will be available soon.
o GetNextInLoop
public virtual GetNextInLoop( iSideVsFace,
iBoundedFace,
oNextEdge,
oSide)
Retrieves the CATEdge which is right after this in its loop.
Parameters:
iSideVsFace
The matter side of this while bounding iBoundedFace.
iBoundedFace
The pointer to a face bounded by this.
oNextEdge
The next edge in the loop. If the edge loop is closed, this method skips over the loop closure. If the loop is open, the method, applied to the end edge, returns a NULL pointer.
oSide
The matter side of oNextEdge while bounding iBoundedFace.
o GetPreviousInLoop
public virtual GetPreviousInLoop( iSideVsFace,
iBoundedFace,
oPrevEdge,
oSide)
Retrieves the CATEdge which is right before this CATEdge in its loop.
Parameters:
iSideVsFace
The matter side of this while bounding iBoundedFace.
iBoundedFace
The pointer to a face bounded by this.
oPrevEdge
The previous edge in the loop. If the edge loop is closed, this method skips over the loop closure. If the loop is open, the method, applied to the end edge, returns a NULL pointer.
oSide
The matter side of oPrevEdge while bounding iBoundedFace.
o GetSideOnFace
public virtual GetSideOnFace( iBoundedFace)
Returns the matter side of this CATEdge with respect to a CATFace.
Parameters:
iBoundedFace
The pointer to a face bounded by this.
Returns:
The matter side of this while bounding iBoundedFace.
o GetVertices
public virtual GetVertices( oStartVertex,
oEndVertex)
Returns the start and end vertices of this CATEdge.
Sample: To only retrieve the start vertex:
CATVertex * Start;
 PointerToAnEdge->GetVertices(&Start,NULL);
Parameters:
oStartVertex
The start vertex. If NULL, this argument is not filled out.
oEndVertex
The end vertex. If NULL, this argument is not filled out.
o GetVerticesParamsOnEdgeCurve
public virtual GetVerticesParamsOnEdgeCurve( oStartParam,
oEndParam)
Retrieves the start and end point curve parameters of this CATEdge.
They match the start and end vertices (e.g. if the underlying edge-curve is reversed, the start parameter is larger than the end parameter).
Sample: To only retrieve the CATCrvParam corresponding to the end vertex:
CATCrvParam End;
 PointerToAnEdge->GetVerticesParamsOnEdgeCurve(NULL,&End);
Parameters:
oStartParam
The CATCrvParam corresponding to the start vertex. If NULL, this argument is not filled out.
oEndParam
The CATCrvParam corresponding to the end vertex. If NULL, this argument is not filled out.
o GetVerticesPointsOnEdgeCurve
public virtual GetVerticesPointsOnEdgeCurve( oStartPoec,
oEndPoec)
Retrieves the start and end points on edge curve of this CATEdge.
Theses match the start and end vertices.
Sample: To only retrieve the CATPointOnEdgeCurve corresponding to the end vertex:
CATPointOnEdgeCurve * End;
 PointerToAnEdge->GetVerticesPointsOnEdgeCurve(NULL,&End);
Parameters:
oStartPoec
The CATPointOnEdgeCurve corresponding to the start vertex. If NULL, this argument is not filled out.
oEndPoec
The CATPointOnEdgeCurve corresponding to the end vertex. If NULL, this argument is not filled out.
o SetCurve
public virtual SetCurve( iCurve,
iOrientation=CATOrientationPositive)
Sets the geometric edge-curve of this CATEdge.
Parameters:
iCurve
The pointer to the geometry of this edge.
iOrientation
The relative orientation of this and its geometry.
o SetGeometryOnFace
public virtual SetGeometryOnFace( iBoundedFace,
iSide,
iPCurve,
iStartVertexGeometry=NULL,
iEndVertexGeometry=NULL)
Sets the geometry of this CATEdge with respect to an underying face.
Parameters:
iBoundedFace
The pointer to a face bounded by this.
iSide
The matter side of this while bounding iBoundedFace.
iPCurve
The pointer to the geometry of this on iBoundedFace.
iStartVertexGeometry
The pointer to the geometry of the start vertex bounding this If NULL, this is not taken into account.
iEndVertexGeometry
The pointer to the geometry of the end vertex bounding this If NULL, this is not taken into account.
o SetGlobalSharpness
public virtual SetGlobalSharpness( iTopData,
iFace1,
iFace2,
const iSharpness,
const iConcavity= CATUnknownConvexity,
iShellOwningTheTwoFaces= NULL,
iMinSharpAngle= CATTopSharpAngle,
iCheckBeforeSet= TRUE,
iForceGeometricEvaluation= FALSE)
Defines the global sharpness of this CATEdge on the edge curve.
Parameters:
iTopData
The object defining the CATSoftwareConfiguration.
iFace1
The pointer to the one face bounded by this.
iFace2
The pointer to another face bounded by this.
iSharpness
The tangential continuity.
iConcavity
The curvature.
iShellOwningTheTwoFaces
The pointer to a shell that owns the two faces. If NULL, the faces are supposed to belong to only one shell.
iMinSharpAngle
Minimum (resp. maximum) angle value in rad for which the edge is declared Sharp (resp. Smooth).
iCheckBeforeSet
If TRUE, GetGlobalSharpness is called and its result compared with iMinSharpAngle. The sharpness is stored only if no incoherence was detected.
Legal values:
TRUE
FALSE
iForceGeometricEvaluation
If TRUE, a geometric evaluation is performed during GetGlobalSharpness even if a value stored (with SetGlobalSharpness) exists.
Legal values:
TRUE
FALSE
Returns:
Whether the sharpness has been stored or not.
Legal values:
TRUE
FALSE
o SetJunctionStatus
public virtual SetJunctionStatus( iTopData,
iFlag= CatTopJunction)
Flags the edge junction status (No effect before V5R8)
Parameters:
iTopData
The object defining the CATSoftwareConfiguration.
iFlag
CatTopUndefined
CatTopJunction
CatTopFunctional
o SetSharpness
public virtual SetSharpness( iFace1,
iFace2,
const iSharpness,
const iConcavity= CATUnknownConvexity,
iShellOwningTheTwoFaces=NULL)
Deprecated:
V5R11 SetGlobalSharpness Defines the global sharpness of this CATEdge on the edge curve.
Parameters:
iFace1
The pointer to the one face bounded by this.
iFace2
The pointer to another face bounded by this.
iSharpness
The tangential continuity.
iConcavity
The curvature.
iShellOwningTheTwoFaces
The pointer to a shell that owns the two faces. If NULL, the faces are supposed to belong to only one shell.
o SetSideOnFace
public virtual SetSideOnFace( iBoundedFace,
iSide)
Sets the matter side of this CATEdge with respect to a CATFace.
Parameters:
iBoundedFace
The pointer to a face bounded by this.
iSide
The matter side of this while bounding iBoundedFace.

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

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