All Frameworks Class Hierarchy This Framework Indexes
PolyhedralInterfaces Interface CATIPolyCurve
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATIPolyCurve
Interface to a polyhedral curve.
A polyhedral curve is a curve represented by vertices, layers and support.
It consists of:
o Iterators to cycle through the vertices.
o Layers that store some properties about the vertices of the curve.
o A support that provide additional information about the geometry of the curve.
The vertices are referenced by integer indices.
Method Index
- o
Accept(CATIPolyCurve&,CATPolyCurveVisitor&)
- Access the concrete curve type through a visitor.
- o
Accept(CATIPolyCurve&,CATPolyCurveConstVisitor&)
- Access the concrete curve type through a const visitor.
- o
AppendVertex(CATMathPoint&,int&)
- Append a vertex to the end of the curve.
- o
CastToSurfaceVertexLine()
- Cast a const CATIPolyCurve to a const CATIPolySurfaceVertexLine.
- o
CastToSurfaceVertexLine()
- Cast a CATIPolyCurve to a CATIPolySurfaceVertexLine.
- o
Close()
- Define the curve as being closed.
- o
GetEndVertex()
- Return the end vertex of the curve.
- o
GetNbVertices()
- Return the number of vertices of the polyhedral curve.
- o
GetNextVertex(int)
- Given a vertex of the curve, return the next vertex along the curve.
- o
GetPrevVertex(int)
- Given a vertex of the curve, return the previous vertex along the curve.
- o
GetStartVertex()
- Return the start vertex of the curve.
- o
GetSupport(CATIPolySupport*&)
- Return the underlying curve support, if any.
- o
GetVertexIterator(CATIPolyCurveVertexIterator*&)
- Return a vertex iterator (explicit).
- o
GetVertexPositionLayer(CATIPolyCurveVertexPositionLayer*&)
- Return the vertex position layer if any.
- o
GetVertexPositionLayer(CATIPolyCurveVertexPositionConstLayer*&)
- Return the vertex position layer if any.
- o
GetVertexTangentLayer(CATIPolyCurveVertexTangentLayer*&)
- Return the vertex tangent layer if any.
- o
GetVertexTangentLayer(CATIPolyCurveVertexTangentConstLayer*&)
- Return the vertex tangent layer if any.
- o
GetVertexWLayer(CATIPolyCurveVertexWConstLayer*&)
- Return the vertex W layer if any.
- o
GetVertexWLayer(CATIPolyCurveVertexWLayer*&)
- Return the vertex W layer if any.
- o
IsClosed()
- Check whether a curve is closed or not.
- o
IsLyingOn(CATIPolySurface&)
- Check if the curve lies on a polyhedral surface.
- o
MergeVertices(int,int)
- Merge vertices v0 and v1 by collapse of the bar (v0, v1).
- o
Open()
- Define the curve as being open.
- o
RegisterObserver(CATIPolyCurveObserver&)
- Register an observer (event listener) with the instance.
- o
SetSupport(CATIPolySupport*)
- Set the underlying curve support.
- o
SplitBar(int,int,int&)
- Split the bar (v0, v1) with creation of a new vertex n.
- o
UnregisterObserver(CATIPolyCurveObserver&)
- Unregister an observer (event listener) with the instance.
Methods
o Accept
| public virtual Accept( | | iCurve, |
| | iV) |
-
Access the concrete curve type through a visitor.
- Returns:
- The status of the application of the visitor.
o Accept
| public virtual Accept( | const | iCurve, |
| | iV) |
-
Access the concrete curve type through a const visitor.
- Returns:
- The status of the application of the visitor.
o AppendVertex
| public virtual AppendVertex( | const | P, |
| | v) |
-
Append a vertex to the end of the curve.
- Parameters:
-
- P
- The position of the vertex.
- v
- The index of the appended vertex.
- Returns:
- S_OK on success and E_FAIL or another error otherwise.
o CastToSurfaceVertexLine
| public virtual CastToSurfaceVertexLine( | ) |
-
Cast a const CATIPolyCurve to a const CATIPolySurfaceVertexLine.
- Returns:
- The cast as a const CATIPolyMesh.
o CastToSurfaceVertexLine
| public virtual CastToSurfaceVertexLine( | ) |
-
Cast a CATIPolyCurve to a CATIPolySurfaceVertexLine.
- Returns:
- The cast as a const CATIPolyMesh.
o Close
-
Define the curve as being closed.
- Returns:
- S_OK if the curve is successfully edited and E_FAIL otherwise.
o GetEndVertex
| public virtual GetEndVertex( | ) |
-
Return the end vertex of the curve.
- Returns:
- The end vertex if any or 0 otherwise.
o GetNbVertices
| public virtual GetNbVertices( | ) |
-
Return the number of vertices of the polyhedral curve.
- Returns:
- The number of vertices of the discrete curve.
o GetNextVertex
| public virtual GetNextVertex( | | v) |
-
Given a vertex of the curve, return the next vertex along the curve.
- Returns:
- The vertex if any or 0 otherwise.
o GetPrevVertex
| public virtual GetPrevVertex( | | v) |
-
Given a vertex of the curve, return the previous vertex along the curve.
- Returns:
- The vertex if any or 0 otherwise.
o GetStartVertex
| public virtual GetStartVertex( | ) |
-
Return the start vertex of the curve.
- Returns:
- The start vertex if any or 0 otherwise.
o GetSupport
| public virtual GetSupport( | | oSupport) |
-
Return the underlying curve support, if any.
- Parameters:
-
- oSupport
- The curve support. The returned support must be released (ref-counted.)
- Returns:
- S_OK if a support is successfully returned.
S_FALSE if a support is not available.
E_FAIL if an error occurs.
o GetVertexIterator
| public virtual GetVertexIterator( | | oIterator) |
-
Return a vertex iterator (explicit).
- Parameters:
-
- oIterator
- The output iterator. The returned instance must be released. (ref-counted.)
- Returns:
- S_OK on success and E_FAIL or another error otherwise.
o GetVertexPositionLayer
| public virtual GetVertexPositionLayer( | | oLayer) |
-
Return the vertex position layer if any.
- Parameters:
-
- oLayer
- The layer that is returned. The returned layer must be released (ref-counted.)
- Returns:
- S_OK if a layer is successfully returned.
S_FALSE if a layer is not available.
E_FAIL if an error occurs.
o GetVertexPositionLayer
| public virtual GetVertexPositionLayer( | | oLayer) |
-
Return the vertex position layer if any.
- Parameters:
-
- oLayer
- The layer that is returned. The returned layer must be released (ref-counted.)
- Returns:
- S_OK if a layer is successfully returned.
S_FALSE if a layer is not available.
E_FAIL if an error occurs.
o GetVertexTangentLayer
| public virtual GetVertexTangentLayer( | | oLayer) |
-
Return the vertex tangent layer if any.
- Parameters:
-
- oLayer
- The layer that is returned. The returned layer must be released (ref-counted.)
- Returns:
- S_OK if a layer is successfully returned.
S_FALSE if a layer is not available.
E_FAIL if an error occurs.
o GetVertexTangentLayer
| public virtual GetVertexTangentLayer( | | oLayer) |
-
Return the vertex tangent layer if any.
- Parameters:
-
- oLayer
- The layer that is returned. The returned layer must be released (ref-counted.)
- Returns:
- S_OK if a layer is successfully returned.
S_FALSE if a layer is not available.
E_FAIL if an error occurs.
o GetVertexWLayer
| public virtual GetVertexWLayer( | | oLayer) |
-
Return the vertex W layer if any.
- Parameters:
-
- oLayer
- The layer that is returned. The returned layer must be released (ref-counted.)
- Returns:
- S_OK if a layer is successfully returned.
S_FALSE if a layer is not available.
E_FAIL if an error occurs.
o GetVertexWLayer
| public virtual GetVertexWLayer( | | oLayer) |
-
Return the vertex W layer if any.
- Parameters:
-
- oLayer
- The layer that is returned. The returned layer must be released (ref-counted.)
- Returns:
- S_OK if a layer is successfully returned.
S_FALSE if a layer is not available.
E_FAIL if an error occurs.
o IsClosed
| public virtual IsClosed( | ) |
-
Check whether a curve is closed or not.
- Returns:
- TRUE if the curve is closed, i.e. last vertex is linked to first, FALSE otherwise.
o IsLyingOn
| public virtual IsLyingOn( | const | s) |
-
Check if the curve lies on a polyhedral surface.
- Parameters:
-
- s
- The input polyhedral surface.
- Returns:
- TRUE if the curve lies on the polyhedral surface and FALSE otherwise.
o MergeVertices
| public virtual MergeVertices( | const | v0, |
| const | v1) |
-
Merge vertices v0 and v1 by collapse of the bar (v0, v1).
Topologically, Vertex v1 is replaced by Vertex v0.
The two vertices must be contiguous.
- Parameters:
-
- v0
- The first vertex of the bar.
- v1
- The second vertex of the bar.
- Returns:
- S_OK if the curve is successfully edited and E_FAIL otherwise.
o Open
-
Define the curve as being open.
- Returns:
- S_OK if the curve is successfully edited and E_FAIL otherwise.
o RegisterObserver
| public virtual RegisterObserver( | | iObserver) |
-
Register an observer (event listener) with the instance.
- Parameters:
-
- iObserver
- The observer that is registered with the instance.
- Returns:
- S_OK if the observer is successfully registered with the curve.
E_FAIL otherwise.
o SetSupport
| public virtual SetSupport( | | iSupport) |
-
Set the underlying curve support.
The curve support may be a surface or a curve.
- Parameters:
-
- iSupport
- A pointer to the curve support. The method does and AddRef () on the support.
Any previous support owned by the object will be released.
- Returns:
- S_OK if a support is successfully set.
E_FAIL otherwise.
o SplitBar
| public virtual SplitBar( | const | v0, |
| const | v1, |
| | n) |
-
Split the bar (v0, v1) with creation of a new vertex n.
The coordinates of n are undefined and must be set. (See the vertex position layer.)
- Parameters:
-
- v0
- The first vertex of the bar.
- v1
- The second vertex of the bar.
- n
- The index of the new vertex.
- Returns:
- S_OK if the curve is successfully edited and E_FAIL otherwise.
o UnregisterObserver
| public virtual UnregisterObserver( | | iObserver) |
-
Unregister an observer (event listener) with the instance.
- Parameters:
-
- iObserver
- The observer that is unregistered with the instance.
- Returns:
- S_OK if the observer is successfully unregistered with the curve.
E_FAIL otherwise.
This object is included in the file: CATIPolyCurve.h
If needed, your Imakefile.mk should include the module: CATPolyhedralInterfaces