CATFmtModelInterfaces Interface CATIFmtMesh

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


interface CATIFmtMesh

Interface representing the Mesh (nodes and elements).
Role: The Mesh is the object which manages nodes and elements, see and .


Method Index


o CreateElements(CATFmtMeshDomain*,CATIFmtConnectivity*,int,CATFmtNode* const*,int,CATFmtElement**)
Creates finite elements.
o CreateMeshDomain(CATIFmtMeshPart*)
Create a new Mesh Domain.
o CreateNodes(CATIFmtMeshPart*,double*,int,CATFmtNode**)
Creates nodes.
o CreateNodesCondensedOn(CATIFmtMeshPart*,int,CATFmtNode* [],CATFmtPath*,CATFmtNode* [])
Create nodes condensed on nodes from another Mesh.
o DeleteElements(int,CATFmtElement**,int)
Delete elements.
o DeleteNodes(int,CATFmtNode**)
Delete nodes.
o GetElementFromTag(unsigned int)
Retreives a finite element from its integer tag.
o GetFirstMeshDomain()
Returns the first Mesh Domain of the Mesh.
o GetFirstMeshPart()
Returns the first Mesh Part of the Mesh.
o GetMeshDomainFromTag(unsigned int)
Retreives a Mesh Domain from its integer tag.
o GetMeshManager()
Returns the Mesh Manager corresponding to the Mesh.
o GetNodeFromTag(unsigned int)
Retreives a finite element node from its integer tag.
o GetNumberOfElements()
Returns the number of finite elements contained in the Mesh.
o GetNumberOfMeshDomains()
Returns the total number of Mesh Domain of the Mesh.
o GetNumberOfNodes()
Returns the number of finite element nodes contained in the Mesh.
o IsContaining(CATFmtNode*)
Check if a node is contained in the Mesh.
o IsContaining(CATFmtElement*)
Check if a finite element is contained in the Mesh.
o ModifyElement(CATFmtElement*)
Modify a finite element.
o ModifyNode(CATFmtNode*,double[3])
Modify a finite element node.
o UpdateVisualization()
Update visualization after Mesh modifications ( nodes/elements creation, modification or deletion).

Methods


o CreateElements
public virtual CreateElements( iDomain,
iConnectivity,
iNbOfNodesPerElement,
iNodes,
iNbOfElements= 1 ,
ioElements= NULL )
Creates finite elements.
Role: This method creates a set of new finite elements in a Mesh Domain.
Parameters:
iDomain
Mesh Domain in which finite elements should be created.
iConnectivity
Connectivity of the finite elements to create.
iConnectivity
Connectivity of the finite elements to create.
iNbOfNodesPerElement
Number of finite elements nodes per finite element to create.
iNodes
Array containing pointers to nodes of all finite elements to create.
iNbOfElements
Number of finite elements to create.
ioElements
Array containing pointers to the created elements.
Returns:
An HRESULT.
Legal values:
S_OK
Elements successfully created.
E_FAIL
The operation failed.
o CreateMeshDomain
public virtual CreateMeshDomain( iMeshPart)
Create a new Mesh Domain.
Parameters:
iMeshPart
Mesh Part to which this Mesh Domain will be associated (see
).
Returns:
A pointer on the created Mesh Domain. The returned value should be released.
o CreateNodes
public virtual CreateNodes( iMeshPart,
const iCoordinates,
iNbOfNodes= 1 ,
ioNodes= NULL )
Creates nodes.
Role: This method creates a set of new finite elements nodes in a Mesh Part.
Parameters:
iMeshPart
Mesh Part in which finite elements nodes will be created.
iCoordinates
Array containing the XYZ coordinates of the nodes to create in the following order: X1, Y1, Z1, X2, Y2, Z2, ...
iNbOfNodes
Number of finite elements nodes to create.
ioNodes
Array containing pointers to the created nodes.
Returns:
An HRESULT.
Legal values:
S_OK
Nodes successfully created.
E_FAIL
The operation failed.
o CreateNodesCondensedOn
public virtual CreateNodesCondensedOn( iMeshPart,
iNbNodes,
iImageNodes,
iImageMesh,
ioCondensedNodes)
Create nodes condensed on nodes from another Mesh.
Role: This method createss a set of finite elements nodes (named condensed nodes) in the Mesh condensed Mesh. This is the way to "connect" two different finite element models.
Parameters:
iMeshPart
Mesh Part in which finite elements nodes will be created.
iNbNodes
Number of finite elements nodes to create.
iImageNodes
Array containing pointers to the image nodes on which the created nodes will be condensed.
ioCondensedNodes
Array that will contain pointer to condensed nodes created by the method.
Returns:
An HRESULT.
Legal values:
S_OK
Nodes successfully created.
E_FAIL
The operation failed.
o DeleteElements
public virtual DeleteElements( iNbOfElements,
iElements,
iDeleteFreedNodes= 1 )
Delete elements.
Role: This method deletes a set of finite elements in the Mesh.
Parameters:
iNbOfElements
Number of finite elements to delete.
iElements
Array containing pointers to the elements to be deleted.
iDeleteFreedNodes

Legal values:
1
After elements deletion, if a node becomes free (i.e. without any linked element), it will be deleted also.
0
No impact on finite elements nodes.
Returns:
An HRESULT.
Legal values:
S_OK
Elements successfully deleted.
E_FAIL
The operation failed.
o DeleteNodes
public virtual DeleteNodes( iNbOfNodes,
iNodes)
Delete nodes.
Role: This method deletes a set of finite elements nodes in the Mesh.
Parameters:
iNbOfNodes
Number of finite elements nodes to delete.
iNodes
Array containing pointers to the nodes to be deleted.
Returns:
An HRESULT.
Legal values:
S_OK
Nodes successfully deleted.
E_FAIL
The operation failed.
o GetElementFromTag
public virtual GetElementFromTag( iTag)
Retreives a finite element from its integer tag.
Parameters:
iTag
Integer tag.
Returns:
The pointer on the finite element if any or NULL if no element correpond to this tag.
o GetFirstMeshDomain
public virtual GetFirstMeshDomain()
Returns the first Mesh Domain of the Mesh.
See method to scan the other Mesh Domains.
Lifecycle rules deviation: the method does not AddRef the returned value..
o GetFirstMeshPart
public virtual GetFirstMeshPart()
Returns the first Mesh Part of the Mesh.
See method to scan the other Mesh Parts. Take care of the fact that the order in which Mesh Parts are returned is arbitrary and that only Mesh Parts containing elements are returned.
Returns:
CATBaseUnknown#Release
o GetMeshDomainFromTag
public virtual GetMeshDomainFromTag( Tag)
Retreives a Mesh Domain from its integer tag.
Parameters:
iTag
Integer tag.
Returns:
The pointer on the Mesh Domain if any or NULL if no Mesh Domain correpond to this tag.
o GetMeshManager
public virtual GetMeshManager()
Returns the Mesh Manager corresponding to the Mesh.
Returns:
CATBaseUnknown#Release
o GetNodeFromTag
public virtual GetNodeFromTag( iTag)
Retreives a finite element node from its integer tag.
Parameters:
iTag
Integer tag.
Returns:
The pointer on the finite element node if any or NULL if no node correpond to this tag.
o GetNumberOfElements
public virtual GetNumberOfElements()
Returns the number of finite elements contained in the Mesh.
o GetNumberOfMeshDomains
public virtual GetNumberOfMeshDomains()
Returns the total number of Mesh Domain of the Mesh.
o GetNumberOfNodes
public virtual GetNumberOfNodes()
Returns the number of finite element nodes contained in the Mesh.
o IsContaining
public virtual IsContaining( iNode)
Check if a node is contained in the Mesh.
Parameters:
iNode
Node to check.
Returns:

Legal values:
1
The node is part of the Mesh.
0
The node is not part of the Mesh.
o IsContaining
public virtual IsContaining( iElement)
Check if a finite element is contained in the Mesh.
Parameters:
iElement
Finite element to check.
Returns:

Legal values:
1
The finite element is part of the Mesh.
0
The finite element is not part of the Mesh.
o ModifyElement
public virtual ModifyElement( iElement)
Modify a finite element.
Role: This method is used to modify a finite element geometry. This method should be called once for all element geometry modifications. A geometry modification is a coordinates modification of its linked nodes.
Parameters:
iElement
Finite element to modify.
o ModifyNode
public virtual ModifyNode( iNode,
const iNewCoordinates)
Modify a finite element node.
Role: This method is used to modify a finite element node (coordinates and/or graphic attributes).
Parameters:
iNode
Finite element node to modify.
iNewCoordinates
New coordinates for the finite element node. Should be initialized with the current ones if only graphic attributes are modified.
o UpdateVisualization
public virtual UpdateVisualization()
Update visualization after Mesh modifications ( nodes/elements creation, modification or deletion).
Role: This method has to be called to update visualisation if and only if the modifications have occured outside from the standard Build/Update process, i.e. outside from the implementation of a mesher (see method).
This method should be called once at the end of a transaction, when all modifications have been performed.

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

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