DataExchangeBaseRepsItf Interface CATIExchangeTessellatedAnnotationRepresentation

Usage: you can freely reimplement this interface.


interface CATIExchangeTessellatedAnnotationRepresentation

Interface to exchange Functional And Tolerancing Annotations (FTA) as tessellated representations.
Role: This interface provides a view on a XCAD document containing FTA as a tessellated representation.
Available from CATIA V5R19SP4 LA and V5R20 GA.


Method Index


o Get2DArcCircleData(void*,double**,double*,double*,double*,int*)
Retrieves the 2D circle arc's parameters.
o Get2DFaceData(void*,float**,int*,int*,int*,int**,int**,int**)
Retrieves the 2D face's parameters.
o Get2DGPType(void*,KindOf2DGP&)
Retrieves the 2D node's GP type.
o Get2DPolyLineData(void*,float**,int*,int*)
Retrieves the 2D polyline's parameters.
o Get2DPolygonData(void*,float**,int*,int**)
Retrieves the 2D polygon's parameters.
o GetChild(void*,unsigned int,void*&)
Retrieves the node's ID from its index.
o GetChildCount(void*,unsigned int*)
Retrieves the number of children of the current node.
o GetGeometricalIDList(int*,int*&)
Retrieves the geometrical entities (Face, edge, vertex, independent curve or point) on which an annotation is attached.
o GetNodeAnnotationConstructionGeometry(void*,unsigned int&,void**&)
GetNodeAnnotationConstructionGeometry
Role: Retrieves the Construction geometry entities of the Annotations.
o GetNodeAnnotationGroupAssociatedBodies(void*,unsigned int&,void**&)
GetNodeAnnotationGroupAssociatedBodies
Role: Retrieves the bodies (geometric sets, .
o GetNodeAnnotationGroupAssociatedCG(void*,unsigned int&,void**&)
GetNodeAnnotationGroupAssociatedCG
Role: Retrieves the CG (Construction geometry entities) that are visually managed by this Group.
o GetNodeAnnotationGroupAttributes(void*,void*&,CATBoolean&)

Role: Retrieves the attributes for a Group node.
o GetNodeAnnotationParallelToScreenState(void*,CATBoolean&,CATBoolean&)

Role: Retrieves the "Parallel To Screen" state for a node.
o GetNodeAnnotationTolerance(void*,double&)
Retrieves the node's tolerance value.
o GetNodeAnnotationType(void*,CATString&,CATString&)
Retrieves the node's Annotation type.
o GetNodeAnnotationValidationString(void*,CATUnicodeString&)
Short role of the method.
o GetNodeAssociatedAnnotation(void*,int*,void**&)
Retrieves the link to associated annotation of a node.
o GetNodeCGCircleParameters(void*,double&,double [3],double [3],double [3])
GetNodeCGCircleParameters
Role: Retrieves the Construction geometry entity Parameters (for a Circle)
o GetNodeCGCylinderParameters(void*,double [3],double&,double [3],double [3])
GetNodeCGCylinderParameters
Role: Retrieves the Construction geometry entity Parameters (for a Cylinder) A cylinder will be obtained by the revolution of a line parallel to the given axis, around the position point, at a distance given by the radius value of this point.
o GetNodeCGLineParameters(void*,double [3],double [3])
GetNodeCGLineParameters
Role: Retrieves the Construction geometry entity Parameters (for a Line)
o GetNodeCGPlaneParameters(void*,double [3],double [2][3],double[2][3],double&)
GetNodeCGPlaneParameters
Role: Retrieves the Construction geometry entity Parameters (for a Plane)
o GetNodeCGPointParameters(void*,double[3])
GetNodeCGPointParameters
Role: Retrieves the Construction geometry entity Parameters (for a Point)
o GetNodeCGThreadComponents(void*,double [3],double&,double [3],double [3],double [3],double [2][3],double[2][3],double&,double [3],double [2][3],double[2][3],double&)
GetNodeCGThreadComponents
Role: Retrieves the Construction geometry entity Parameters (for a Thread) A thread is defined by one cylinder (cf.
o GetNodeCGThreadParameters(void*,double [3],double&,double [3],double [3],double [3],double [3],double [3],double&,double [3],double [3],double [3],double [3])
GetNodeCGThreadParameters
Role: Retrieves the Construction geometry entity Parameters (for a Thread) A thread is represented by two parallel circle arcs, joined by two lines, with a third circle arc (internal), between both others (external : upper and lower).
o GetNodeCGUID(void*,CATListOfInt&)
GetNodeCGUID
Role: To get the UID of a Construction Geometry entity, from its NodeID.
o GetNodeCameraAttributes(void*,CATUnicodeString&,double&,double&)
Retrieves the 3D camera attributes for a Group node.
o GetNodeCameraParameters(void*,float[3],float[3],float[3],float[3])
Retrieves the 3D viewpoint (camera) for a Group feature.
o GetNodeColor(void*,unsigned int*,unsigned int*,unsigned int*,unsigned int*)
Retrieves the color of a node.
o GetNodeConstructionGeometryType(void*,CATUnicodeString&)
GetNodeConstructionGeometryNameAndType
Role: Retrieves the Construction geometry entity Name and Type
o GetNodeGPParallelToScreenOrigin(void*,float[3])

Role: Retrieves the "Parallel To Screen" origin for a GP node.
o GetNodeGeometry(void*,int*,int*&)
Retrieves the link to geometry of a node.
o GetNodeGeometryFullPath(void*,int&,CATListOfCATUnicodeString*&)
Retrieves the path of the link to geometry of a node.
o GetNodeLineStyle(void*,unsigned short&,unsigned short&)

Role: Retrieves the line style characteristics for the current node
o GetNodeOrientationMatrix(void*,float[2][2],float[2])
Retrieves the 2D orientation matrix in the plane returned by GetNodePlane.
o GetNodePlane(void*,float[3],float[3],float[3])
Retrieves the 3D plane on a Node defines the 3D plane in which all node 2D geometric definitions will be expressed.
o GetNodeProperties(void*,unsigned int*,float*,CATUnicodeString&)
Retrieves the properties of a node.
o GetNodeType(void*,KindOfNode&)
Retrieves the node's type.
o GetNodeUDA(void*,unsigned int*,CATUnicodeString**,CATUnicodeString**)
Retrieves the User Defined Attributes Attached to a node.
o GetRootNode(unsigned int,void*&)
Retrieves the root node's ID from its index.
o GetRootNodesCount(unsigned int*)
Retrieves the root nodes' number.
o GetSAG(void*,float*,float*,float*)
Retrieves the tessellation options.

Methods


o Get2DArcCircleData
public virtual Get2DArcCircleData( const iNodeID,
oCenter,
oRadius,
oBegin_angle,
oEnd_angle,
oFill)
Retrieves the 2D circle arc's parameters.
Parameters:
oCenter
the center of the 2D circle arc, it is a 2D point. ***sizeOf Get2DArcCircleData oCenter : 2
oRadius
the radius of the 2D circle arc.
oBegin_angle
the begin angle to construct a 2D circle arc.
legal values: the default value is 0. By this way, it creates a 2D circle.
oEnd_angle
the end angle to construct a 2D circle arc.
legal values: the default value is 2*pi. By this way, it creates a 2D circle.
oFill
the integer which allows to construct a 2D circle arc just with edges or filled with graphic attributes.
legal values:
NOFILL : (=0) just edges are drawn.
FILL : (=1) the 2D circle arc or the 2D circle is filled with graphic attributes.
o Get2DFaceData
public virtual Get2DFaceData( const iNodeID,
oPoints,
oNbPoint,
oFill,
oNbTriangle,
oType,
oTriangle,
oVertex)
Retrieves the 2D face's parameters.
Parameters:
oPoints
Array containing the x, y coordinates for each point of the polygon. Its size is equal to two times the number of points. So, the coordinates x, y of the first point are respectively stored in iPoints[0], and iPoints[1], the coordinates x, y of the second point, in iPoints[2], iPoints[3], and so on... ***sizeOf Get2DFaceData oPoints : 2*oNbPoint
oNbPoint
The number of points used to define the polygon.
oFill
the integer which allows to construct a 2D polygon just with edges or filled with graphic attributes.
legal values:
  • NOFILL : just edges are drawn.
  • FILL : the 2D circle arc or the 2D circle is filled with graphic attributes.
oNbTriangles
The number of group of triangles which compose the 2D polygon after the tesselation.
oType
Array which contain the type of each group of triangles.
legal values:
  • 0 : single triangles
  • 1 : triangle strip
  • 2 : triangle fan
Its size is equal to oNbTriangles. ***sizeOf Get2DFaceData oType : oNbTriangle
oTriangles
Array which contain the number of vertex for each group of triangles. Its size is equal to oNbTriangles. ***sizeOf Get2DFaceData oTriangle : oNbTriangle
oVertex
Array of indices of vertex which compose the 2D polygon.
This array is composed of various arrays which represent one group of triangles. And each group of triangles have a type defined by the array "oType".
  • If the group is made of single triangles, indices are written like in the following sample :
    	1              4
    	|\           /|
    	| \         / |
    	|  \       /  |
    	|   \     /   |
    	|____\   /____|
    	2     3  5    6  
    	
  • if the group is a triangle strip, indices are written like in the following sample :
    	1     3      5
    	-------------
    	\     |\     |\
    	 \    | \    | \
    	  \   |  \   |  \
    	   \  |   \  |   \
    	    \ |    \ |    \
    	     \|_____\|_____\
    	      2      4       6
    	
  • if the group is a triangle fan, indices are written like in the following sample :
    	2      1
    	 _______    
    	|     /|\
    	|    / | \
    	|   /  |  \
    	|  /   |   \
    	| /    |    \
    	|/_____|_____\
    	3      4      5
    	
DO NOT USE this method ***sizeOf Get2DFaceData oVertex : ( sizeOf oTriangle : oNbTriangle )
o Get2DGPType
public virtual Get2DGPType( const iNodeID,
oGPType)
Retrieves the 2D node's GP type.
Parameters:
iNodeID
the node's ID.
oGPType
the GP's type.
Returns:
If current node isn't a 2D GP, returns E_FAIL. Mandatory method
o Get2DPolyLineData
public virtual Get2DPolyLineData( const iNodeID,
oPoints,
oNbPoints,
oLineType)
Retrieves the 2D polyline's parameters.
Parameters:
iNodeID
the node's ID.
oPoints
the points coordinates array. Array of points coordinates: XYXYXY... Its size is equal to two times the number of points. ***sizeOf Get2DPolyLineData oPoints : 2*oNbPoints
oNbPoints
Retrieves the number of points.
oLineType
Retrieves the line type.
Legal values:
LINES
(=0)
The number of points must be even. A line will be drawn between points 1 and 2, an other line will be drawn between points 3 and 4, ...
LINE_STRIP
(=1)
The number of points can be either even or odd. A line will be drawn between points 1 and 2, then, an other line will be drawn between points 2 and 3, ...
LINE_LOOP
(=2)
Same as LINE_STRIP, excepted that one more line will be drawn between the last and the first points.
Returns:
If current node hasn't a 2D Polyline Data, returns E_FAIL.
o Get2DPolygonData
public virtual Get2DPolygonData( const iNodeID,
oPoints,
oNbContour,
oNbOfPtPerContour)
Retrieves the 2D polygon's parameters. Specification: The last contour is external, the others are internal (in order to define holes).
Parameters:
iNodeID
the node's ID.
oPoints
the points coordinates array. Array of points coordinates: XYXYXY... Its size is equal to two times the number of points. ***sizeOf Get2DPolygonData oPoints : 2* ( sizeOf oNbOfPtPerContour : oNbContour )
oNbContour
The number of contour.
oNbOfPtPerContour
The number of points for each contour. ***sizeOf Get2DPolygonData oNbOfPtPerContour : oNbContour
Returns:
If current node hasn't a 2D Polygon Data, returns E_FAIL.
o GetChild
public virtual GetChild( const iNodeID,
const iChildIndex,
oChildNodeID)
Retrieves the node's ID from its index.
Parameters:
iNodeID
the node's ID.
iChildIndex
the child's index from 0 to children number - 1.
oChildNodeID
the ID of the child. Mandatory method
o GetChildCount
public virtual GetChildCount( const iNodeID,
oNodeCount)
Retrieves the number of children of the current node.
Parameters:
iNodeID
the node's ID.
oNodeCount
the number of children nodes. Mandatory method
o GetGeometricalIDList
public virtual GetGeometricalIDList( oNbGeometricID,
oGeometricalID)
Retrieves the geometrical entities (Face, edge, vertex, independent curve or point) on which an annotation is attached.
Parameters:
oNbGeometricID
the number of Identifier of the geometric element to which one or more annotation are attached
oGeometricalID
the unique Identifier of the geometric element to which one or more annotation are attached This method is called before the Geometrical Conversion in order to initialize the Mapping Table Recommended method for FTA Links on Geometry Be careful: independent curve or point are treated only if the Mapping table is completed. ***sizeOf GetGeometricalIDList oGeometricalID : oNbGeometricID
o GetNodeAnnotationConstructionGeometry
public virtual GetNodeAnnotationConstructionGeometry( const iRootNodeID,
oNbConstructionGeometryNode,
oConstructionGeometryNodeID)
GetNodeAnnotationConstructionGeometry
Role: Retrieves the Construction geometry entities of the Annotations.
Parameters:
iRootNodeID
[in] the node's ID.
oNbConstructionGeometryNode
[out] the number of Construction geometry entities of the Annotations.
oConstructionGeometryNodeID
[out] The array of Identifiers of the number of Construction geometry entities of the Annotations. The caller must delete this array: delete [] oConstructionGeometryNodeID ; oConstructionGeometryNodeID = NULL ; ***sizeOf GetNodeAnnotationConstructionGeometry oConstructionGeometryNodeID : oNbConstructionGeometryNode
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeAnnotationGroupAssociatedBodies
public virtual GetNodeAnnotationGroupAssociatedBodies( const iNodeID,
oNbOfAssociatedBodiesID,
oAssociatedBodiesID)
GetNodeAnnotationGroupAssociatedBodies
Role: Retrieves the bodies (geometric sets, ...) that are visually managed by this Group. The associated bodies are not shown in default case; they become visible with the Group. This method should be used only with XCAD option to get the 3D tessellated representation with structure.
Parameters:
iNodeID
[in] the node's ID.
oNbOfAssociatedBodiesID
[out] the number of Identifiers of the Associated bodies
oAssociatedBodiesID
[out] The array of Identifiers of the Associated bodies, corresponding to ID in the 3D tessellated representation with structure. The caller must delete this array: delete [] oAssociatedBodiesID ; oAssociatedBodiesID = NULL ; ***sizeOf GetNodeAnnotationGroupAssociatedBodies oAssociatedBodiesID : oNbOfAssociatedBodiesID
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeAnnotationGroupAssociatedCG
public virtual GetNodeAnnotationGroupAssociatedCG( const iNodeID,
oNbOfAssociatedCGID,
oAssociatedCGID)
GetNodeAnnotationGroupAssociatedCG
Role: Retrieves the CG (Construction geometry entities) that are visually managed by this Group. The associated CG are not shown in default case; they become visible with the Group.
Parameters:
iNodeID
[in] the node's ID.
oNbOfAssociatedCGID
[out] the number of Identifiers of the Associated CG
oAssociatedCGID
[out] The array of Identifiers of the Associated CG, corresponding to ID returned by GetNodeAnnotationConstructionGeometry. The caller must delete this array: delete [] oAssociatedBodiesID ; oAssociatedBodiesID = NULL ; ***sizeOf GetNodeAnnotationGroupAssociatedCG oAssociatedCGID : oNbOfAssociatedCGID
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeAnnotationGroupAttributes
public virtual GetNodeAnnotationGroupAttributes( const iNodeID,
oActiveViewNodeId,
oClippingState)

Role: Retrieves the attributes for a Group node.
Parameters:
iNodeID
The Group node's ID.
oActiveViewNodeId
Active View NodeID.
If NULL : There is no Active view for this group.
oClippingState

TRUE : The active view is used to define a clipping plane.
FALSE : There is no clipping plane applied.
o GetNodeAnnotationParallelToScreenState
public virtual GetNodeAnnotationParallelToScreenState( const iNodeID,
oParallelToScreenState,
oZoomableState)

Role: Retrieves the "Parallel To Screen" state for a node.
Parameters:
iNodeID
[in] the node's ID.
oParallelToScreenState
[out] The 'Parrallel to screen' state
oZoomableState
[out] The 'Zoomable' state (only if the 'Parrallel to screen' state is TRUE)
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeAnnotationTolerance
public virtual GetNodeAnnotationTolerance( const iNodeID,
oAnnotationTolerance)
Retrieves the node's tolerance value.
Parameters:
iNodeID
the node's ID.
oAnnotationTolerance
the Annotation Tolerance.
o GetNodeAnnotationType
public virtual GetNodeAnnotationType( const iNodeID,
oAnnotationType,
oAnnotationSubType)
Retrieves the node's Annotation type.
Parameters:
iNodeID
the node's ID.
oAnnotationType
the Annotation type. XCAD_FTA_Datum, XCAD_FTA_SizeAndDimension, XCAD_FTA_Form, XCAD_FTA_Orientation, XCAD_FTA_Position, XCAD_FTA_RunOut, XCAD_FTA_NonSemantic, XCAD_FTA_PartialSurface, XCAD_FTA_View,
oAnnotationSubType
the Annotation sub type. For Datum Type : XCAD_FTA_SUBTYPE_DatumSimple XCAD_FTA_SUBTYPE_DatumTarget For Size and Dimension Type : XCAD_FTA_SUBTYPE_LinearDimension XCAD_FTA_SUBTYPE_AngularDimension XCAD_FTA_SUBTYPE_ChamferDimension XCAD_FTA_SUBTYPE_BasicDim XCAD_FTA_SUBTYPE_OrientedLinearDimension XCAD_FTA_SUBTYPE_OrientedAngularDimension For Form Type : XCAD_FTA_SUBTYPE_Straightness XCAD_FTA_SUBTYPE_Flatness XCAD_FTA_SUBTYPE_Circularity XCAD_FTA_SUBTYPE_Cylindricity XCAD_FTA_SUBTYPE_ProfileOfAnyLine XCAD_FTA_SUBTYPE_ProfileOfASurface XCAD_FTA_SUBTYPE_PatternLocation For Orientation Type : XCAD_FTA_SUBTYPE_Angularity XCAD_FTA_SUBTYPE_Perpendicularity XCAD_FTA_SUBTYPE_Parallelism For Position Type : XCAD_FTA_SUBTYPE_Position XCAD_FTA_SUBTYPE_Concentricity XCAD_FTA_SUBTYPE_Symmetry XCAD_FTA_SUBTYPE_PositionOfAnyLine XCAD_FTA_SUBTYPE_PositionOfASurface For Runout Type : XCAD_FTA_SUBTYPE_CircularRunOut XCAD_FTA_SUBTYPE_TotalRunOut For NonSemantic Type : XCAD_FTA_SUBTYPE_Roughness XCAD_FTA_SUBTYPE_Weld XCAD_FTA_SUBTYPE_Text XCAD_FTA_SUBTYPE_FlagNote XCAD_FTA_SUBTYPE_Noa XCAD_FTA_SUBTYPE_Group XCAD_FTA_SUBTYPE_CoordinateDimension XCAD_FTA_SUBTYPE_GeneralTolerance XCAD_FTA_SUBTYPE_DatumTarget XCAD_FTA_SUBTYPE_DatumSimple For Partial surface (restricted area) Type : XCAD_FTA_SUBTYPE_RestrictedArea For View Type : XCAD_FTA_SUBTYPE_View Mandatory method
o GetNodeAnnotationValidationString
public virtual GetNodeAnnotationValidationString( const iAnnotationNode,
oValidationString)
Short role of the method.
Role: Retrive CATUnicodeString equivalent for FTA.
Parameters:
iAnnotationNode
[in] Annotation Node
oValidationString
[out] Equivalent UnicodeString
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeAssociatedAnnotation
public virtual GetNodeAssociatedAnnotation( const iNodeID,
oNbAssociatedAnnotationID,
oAssociatedAnnotationID)
Retrieves the link to associated annotation of a node. The associated annotation(s) has(have) been created before by same API. Datum simple pointing on one or several Datum targets. View pointing on one or several annotations (except Group or View annotations). Group pointing on one or several annotations (except Group or View annotations).
Parameters:
iNodeID
the node's ID.
oNbAssociatedAnnotationID
the number of Identifier of the associated annotation element to which the annotation is attached
oAssociatedAnnotationID
the Identifier of the associated annotation to which the annotation is attached The caller must delete this array... ***sizeOf GetNodeAssociatedAnnotation oAssociatedAnnotationID : oNbAssociatedAnnotationID
o GetNodeCGCircleParameters
public virtual GetNodeCGCircleParameters( const iConstructionGeometryNode,
oRadius,
oPlaneOrigin,
oPlaneFirstDirection,
oPlaneSecondDirection)
GetNodeCGCircleParameters
Role: Retrieves the Construction geometry entity Parameters (for a Circle)
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oRadius
[out] The radius of the circle
oPlaneOrigin
[out] The Origin point coord (XYZ)
oPlaneFirstDirection
[out] The first vector coord (XYZ)
oPlaneSecondDirection
[out] The second vector coord (XYZ)
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGCylinderParameters
public virtual GetNodeCGCylinderParameters( const iConstructionGeometryNode,
oPositionPoint,
oRadius,
oStartPoint,
oEndPoint)
GetNodeCGCylinderParameters
Role: Retrieves the Construction geometry entity Parameters (for a Cylinder) A cylinder will be obtained by the revolution of a line parallel to the given axis, around the position point, at a distance given by the radius value of this point.
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oPositionPoint
[out] The origin point coord (XYZ)
oRadius
[out] The radius value
oStartPoint
[out] The start point of the parallel axis of revolution, to build the cylinder
oEndPoint
[out] The end point of the parallel axis of revolution, to build the cylinder
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGLineParameters
public virtual GetNodeCGLineParameters( const iConstructionGeometryNode,
oStartPoint,
oEndPoint)
GetNodeCGLineParameters
Role: Retrieves the Construction geometry entity Parameters (for a Line)
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oStartPoint
[out] The start point coord (XYZ)
oEndPoint
[out] The end point coord (XYZ)
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGPlaneParameters
public virtual GetNodeCGPlaneParameters( const iConstructionGeometryNode,
oOriginPoint,
oFirstVector,
oSecondVector,
oAngle)
GetNodeCGPlaneParameters
Role: Retrieves the Construction geometry entity Parameters (for a Plane)
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oOriginPoint
[out] The origin point coord (XYZ)
oFirstVector
[out] The first vector start and end points coord (2 * XYZ)
oSecondVector
[out] The second vector start and end points coord (2 * XYZ)
oAngle
[out] The angle in radians
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGPointParameters
public virtual GetNodeCGPointParameters( const iConstructionGeometryNode,
oPointParameters)
GetNodeCGPointParameters
Role: Retrieves the Construction geometry entity Parameters (for a Point)
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oPointParameters[3]
[out] The point coord (XYZ)
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGThreadComponents
public virtual GetNodeCGThreadComponents( const iConstructionGeometryNode,
oThreadCylinderPositionPoint,
oThreadCylinderRadius,
oThreadCylinderStartPoint,
oThreadCylinderEndPoint,
oThreadUpperPlaneOriginPoint,
oThreadUpperPlaneFirstVector,
oThreadUpperPlaneSecondVector,
oThreadUpperPlaneAngle,
oThreadLowerPlaneOriginPoint,
oThreadLowerPlaneFirstVector,
oThreadLowerPlaneSecondVector,
oThreadLowerPlaneAngle)
GetNodeCGThreadComponents
Role: Retrieves the Construction geometry entity Parameters (for a Thread) A thread is defined by one cylinder (cf. GetNodeCGCylinderParameters) and two planes (cf. twice GetNodeCGPlaneParameters).
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oThreadCylinderPositionPoint
[out] cf. GetNodeCGCylinderParameters 2nd argument
oThreadCylinderRadius
[out] cf. GetNodeCGCylinderParameters 3rd argument
oThreadCylinderStartPoint
[out] cf. GetNodeCGCylinderParameters 4th argument
oThreadCylinderEndPoint
[out] cf. GetNodeCGCylinderParameters 5th argument
oThreadUpperPlaneOriginPoint
[out] cf. GetNodeCGPlaneParameters 2nd argument
oThreadUpperPlaneFirstVector
[out] cf. GetNodeCGPlaneParameters 3rd argument
oThreadUpperPlaneSecondVector
[out] cf. GetNodeCGPlaneParameters 4th argument
oThreadUpperPlaneAngle
[out] cf. GetNodeCGPlaneParameters 5th argument
oThreadLowerPlaneOriginPoint
[out] cf. GetNodeCGPlaneParameters 2nd argument
oThreadLowerPlaneFirstVector
[out] cf. GetNodeCGPlaneParameters 3rd argument
oThreadLowerPlaneSecondVector
[out] cf. GetNodeCGPlaneParameters 4th argument
oThreadLowerPlaneAngle
[out] cf. GetNodeCGPlaneParameters 5th argument
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGThreadParameters
public virtual GetNodeCGThreadParameters( const iConstructionGeometryNode,
oUpperCircleCenterPoint,
oUpperCircleRadius,
oUpperCirclePlaneFirstDirection,
oUpperCirclePlaneSecondDirection,
oUpperCircleStartPoint,
oUpperCircleEndPoint,
oLowerCircleCenterPoint,
oLowerCircleRadius,
oLowerCirclePlaneFirstDirection,
oLowerCirclePlaneSecondDirection,
oLowerCircleStartPoint,
oLowerCircleEndPoint)
GetNodeCGThreadParameters
Role: Retrieves the Construction geometry entity Parameters (for a Thread) A thread is represented by two parallel circle arcs, joined by two lines, with a third circle arc (internal), between both others (external : upper and lower). This method gives the two external circle arcs. The start and end points of each arc are also the extremities of the thread lines (start upper arc to start lower arc, end upper arc to end lower arc). The average of both external circle arcs parameters gives the internal circle arc parameters.
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oUpperCircleCenterPoint
[out] Center point coord. (X Y Z) of the Upper external circle
oUpperCircleRadius
[out] The radius of the Upper external circle
oUpperCirclePlaneFirstDirection
[out] The First direction of the Upper circle support plane
oUpperCirclePlaneSecondDirection
[out] The Second direction of the Upper circle support plane
oUpperCircleStartPoint
[out] The Strat point of the Upper external circle arc
oUpperCircleEndPoint
[out] The End point of the Upper external circle arc
oLowerCircleCenterPoint
[out] Center point coord. (X Y Z) of the Lower external circle
oLowerCircleRadius
[out] The radius of the Lower external circle
oLowerCirclePlaneFirstDirection
[out] The First direction of the Lower circle support plane
oLowerCirclePlaneSecondDirection
[out] The Second direction of the Lower circle support plane
oLowerCircleStartPoint
[out] The Strat point of the Lower external circle arc
oLowerCircleEndPoint
[out] The End point of the Lower external circle arc
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCGUID
public virtual GetNodeCGUID( const iConstructionGeometryNode,
oListOfIDs)
GetNodeCGUID
Role: To get the UID of a Construction Geometry entity, from its NodeID.
Parameters:
iConstructionGeometryNode
[in] The CG node's ID.
oListOfIDs
[out] The list of UID for each geometrical component of the input CG.
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeCameraAttributes
public virtual GetNodeCameraAttributes( const iNodeID,
oCameraType,
oCameraViewAngle,
oCameraZoom)
Retrieves the 3D camera attributes for a Group node.
Parameters:
iNodeID
The Group node's ID.
oCameraType
The type of the camera.
legal values:
"3D_CONIC_CAMERA"
"3D_CYLINDRIC_CAMERA"
"UNKNOWN_CAMERA"
oCameraViewAngle
This parameter is used only for "3D_CONIC_CAMERA" cameras
oCameraZoom
This parameter is used only for "3D_CYLINDRIC_CAMERA" cameras
Returns:
If current node has no camera parameters, returns S_FALSE.
o GetNodeCameraParameters
public virtual GetNodeCameraParameters( const iNodeID,
oOrigin,
oDirection,
oZenith,
oTarget)
Retrieves the 3D viewpoint (camera) for a Group feature.
Parameters:
iNodeID
The Group node's ID.
oOrigin
The origin (point) of the camera.
oDirection
The sight direction (vector) of a 3D camera. It results a rotation of the camera around it's origin. This direction must be perpendicular to the up direction.
oZenith
The up direction (vector) of a 3D camera. It results a rotation of the camera around it's sight direction. This direction must be perpendicular to the sight direction.
oTarget
The target point of a 3D camera. It results a change of the camera sight direction.
Returns:
If current node has no camera parameters, returns S_FALSE.
o GetNodeColor
public virtual GetNodeColor( const iNodeID,
oRed,
oGreen,
oBlue,
oAlpha= NULL)
Retrieves the color of a node.
Parameters:
iNodeID
the node's ID.
oRed
the red component. Legal values: oRed ranges from 0 to 255.
oGreen
the green component. Legal values: oGreen ranges from 0 to 255.
oBlue
the blue component. Legal values: oBlue ranges from 0 to 255.
oAlpha
the alpha component. Legal values: oAlpha ranges from 0 to 255.
o GetNodeConstructionGeometryType
public virtual GetNodeConstructionGeometryType( const iConstructionGeometryNode,
oConstructionGeometryType)
GetNodeConstructionGeometryNameAndType
Role: Retrieves the Construction geometry entity Name and Type
Parameters:
iConstructionGeometryNode
[in] the node's ID.
oConstructionGeometryType
[out] The CG entity Type Depending on this type, the following methods GetNodeCG*Parameters can be used on the node's ID.
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeGPParallelToScreenOrigin
public virtual GetNodeGPParallelToScreenOrigin( const iNodeID,
oOrigin)

Role: Retrieves the "Parallel To Screen" origin for a GP node.
Parameters:
iNodeID
[in] the node's ID.
Origin
The Origin in model coordinates of the "Parralel To Screen" GP.
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeGeometry
public virtual GetNodeGeometry( const iNodeID,
oNbGeometricID,
oGeometricID)
Retrieves the link to geometry of a node.
Parameters:
iNodeID
the node's ID.
oNbGeometricID
the number of Identifier of the geometric element to which the annotation is attached
oGeometricID
the Identifier of the geometric element to which the annotation is attached ***sizeOf GetNodeGeometry oGeometricID : oNbGeometricID
o GetNodeGeometryFullPath
public virtual GetNodeGeometryFullPath( const iNodeID,
oNbOfGeometryPathes,
oGeometryPathesTable)
Retrieves the path of the link to geometry of a node.
Role: In addition to GetNodeGeometry() method, this method gives the full path between the current annotation and the geometrical element(s) given by GetNodeGeometry() method. This method must be used only if the current annotation and the linked geometrical element(s) are not in the same Document.
Parameters:
iNodeID
[in] The node's ID.
oNbOfGeometryPathes
[out] The number of Pathes (size of the array oGeometryPathesTable).
oGeometryPathesTable
[out] Array of List of CATUnicodeString to define the full pathes. Each element of this array is a List of CATUnicodeString that corresponds to a path. Each element of such list must be composed like this: "Type1:Value1:Type2:Value2<...>:" (the ":" character is a separator that must not be used in the path elements) Sample: if the path is MyAnnotation > MyProduct > MyPartInstance.1 > MyPart > MyBody (where those strings are some Name identifiers), the list describing this path will be composed by 5 strings: 1 > "Name:MyAnnotation:" 2 > "Name:MyProduct:" 3 > "Name:MyPartInstance.1:" 4 > "Name:MyPart:" 5 > "Name:MyBody:" The identifiers types can be customized but the Name type is mandatory. Sample: "Name:MyProduct:Type:ASMProd:UID:0dfe4885:" Input and Output implementations must communicate on what kinds of identifiers are used by this method.
Returns:
S_OK if one or more path is returned E_FAIL if no path is defined (e.g. when there is no linked geometry or if the linked geometry is in the same document, ...)
o GetNodeLineStyle
public virtual GetNodeLineStyle( const iNodeID,
oPattern,
oRatio)

Role: Retrieves the line style characteristics for the current node
Parameters:
iNodeID
The Annotation node's ID.
oPattern
The line style pattern
This argument must be processed as a "linear bitmap" :
Each "1" bit represents a shown pixel
Each "0" bit represent an unshown pixel.
oRatio
The line style ratio
Use this argument as a magnification factor of the pattern.
Exemple : if pattern is 27242 (0110101001101010 in binary) and ratio is 3,
the line must be drawned like this (* are shown pixel, . are unshown) :
...******...***...***......******...***...***...
Returns:
S_OK if everything ran ok, otherwise...
o GetNodeOrientationMatrix
public virtual GetNodeOrientationMatrix( const iNodeID,
oRotationMatrix,
oTranslationVector)
Retrieves the 2D orientation matrix in the plane returned by GetNodePlane.
Parameters:
iNodeID
the node's ID.
oRotationMatrix
the rotation component.
oTranslationVector
the translation component.
Returns:
If current node has no orientation matrix, returns S_FALSE.
o GetNodePlane
public virtual GetNodePlane( const iNodeID,
oOrigin,
oVectorX,
oVectorY)
Retrieves the 3D plane on a Node defines the 3D plane in which all node 2D geometric definitions will be expressed.
Parameters:
iNodeID
the node's ID.
Origin
The Origin of space defining the plane.
VectorX
The X vector of the plane.
VectorY
The Y vector of the plane
Returns:
If current node has no plane, returns S_FALSE.
o GetNodeProperties
public virtual GetNodeProperties( const iNodeID,
oShow,
oThickness,
oNodeName)
Retrieves the properties of a node.
Parameters:
iNodeID
the node's ID.
oShow
the Show component. Legal values: 1=Show - 0=No_show
oThickness
the Thickness component. Real value of the thickness in millimeters.
oNodeName
the name of the Annotation
o GetNodeType
public virtual GetNodeType( const iNodeID,
oNodeType)
Retrieves the node's type.
Parameters:
iNodeID
the node's ID.
oNodeType
the node's type. Not Mandatory method
o GetNodeUDA
public virtual GetNodeUDA( const iNodeID,
oNbParams,
oNodeParamsNames,
oNodeParamsValues)
Retrieves the User Defined Attributes Attached to a node.
Parameters:
iNodeID
the node's ID.
oNbParams,
The Number of Text Fields attached to the node
oNodeParamsNames,
the Parameter Fields ***sizeOf GetNodeUDA oNodeParamsNames : oNbParams
oNodeParamsValues
The Value Fields ***sizeOf GetNodeUDA oNodeParamsValues : oNbParams
Returns:
If no UDA, returns S_FALSE.
o GetRootNode
public virtual GetRootNode( const iRootIndex,
oRootNodeID)
Retrieves the root node's ID from its index.
Parameters:
iRootIndex
the node's index from 0 to root nodes number - 1.
oRootNodeID
the root node's ID. Mandatory method
o GetRootNodesCount
public virtual GetRootNodesCount( oNodeCount)
Retrieves the root nodes' number.
Parameters:
oNodeCount
the number of root nodes. Mandatory method
o GetSAG
public virtual GetSAG( const iNodeID,
oSAGValue,
oAngleValue,
oStepValue)
Retrieves the tessellation options.
Parameters:
iNodeID
the node's ID.
oSAGValue
the used SAG (geometric precision) for the tessellation.
oAngleValue
the max angle between consecutive normals for the tessellation.
oStepValue
the max size of edges for the tessellation. Not Mandatory method

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

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