SfmProfile (Object)

Interface to manage the structure frame modeling member object Role: Allows accessing and setting of member's data.
See also:

Properties


Property AnchorPoint() As
Returns or sets the member's anchor point.
Example
:
This example retrieves in AnchorPointName the anchor point name of the SfmProfile feature.
 Dim AnchorPointName As String
 Set AnchorPointName = SfmProfile.AnchorPoint
 
Property SectionName() As
Returns or sets the member's section name.
Example
:
This example retrieves in Name the name of section user by the SfmProfile feature.
 Dim Name As String
 Set Name = SfmProfile.SectionName
 
Property SplitProfiles() As (Read Only)
Returns the SplitProfiles.
Example
:
This example retrieves SplitProfiles list of the Stiffener.
 Dim SplitStiffeners As References
 Set SplitStiffeners = SuperStiffener.SplitProfiles
 Dim SplitStiffener1 As Reference
 Set SplitStiffener1 = SplitStiffeners.Item(1)
 Set SelctionObj = CATIA.ActiveDocument.Selection
 SelctionObj.Add SplitStiffener1
 Dim SplitStiff1 As SfmStiffener
 Set SplitStiff1 = SelctionObj.FindObject("CATIASfmStiffener")
 
Property Support() As (Read Only)
Returns the member's support.
Example
:
This example retrieves in Support the support of the SfmProfile feature.
 Dim Support As Reference
 Set Support = SfmProfile.Support
 

Methods


Func AddEndcut( iExtremityIndex, iEndcutType, iEndcutName, iListContext, iListParameters) As
Creates Endcut on a SuperProfile.Use the method to create as well as edit the endcut.
Parameters:
iExtremityIndex
[in] The extremity on which endcut is to be applied(1-Start,2-End).
iEndcutType
[in] The type of Endcut(Snipe,Trim,Weld).
iEndcutName
[in] Name of the Endcut.
iListContext
[in] Context inputs for contextual endcuts or cutbacks.Not required for Custom.
iListParameters
[in] The list of Parameters.
oSfmProfileEndCut
[out] The created Endcut.
Returns:
S_OK if everything ran ok
Example:
This Example creates a new contextual endcut on Stiifener Start extremity.
 ' First read the specifications required for endcut
 Dim FactoryObj As SfmOperationFactory
 Set FactoryObj = PartObj.GetCustomerFactory("SfmOperationFactory")
 Dim EndCutManagerObj As SfmEndcutManager
 Set EndCutManagerObj = FactoryObj.GetEndcutManager
 Dim ListOfContextNames, ListOfUDFParamNames As Variant
 Dim ListOfUDFParameters As SfmConnectionParameters
 EndCutManagerObj.GetEndcutSpecifications "Tee", "Snipe", "T-CTX-PLATE", ListOfContextNames, ListOfUDFParameters, ListOfUDFParamNames
 ' Read the Name of Context
 Dim SizeOfContextNames As Long
 SizeOfContext = UBound(ListOfContextNames)
 Dim ContextName As String
 For i = 0 To SizeOfContext  
  ContextName = ListOfContextNames(i)
 Next
 ' Read and Set the Parameter Values
 Dim SizeOfUDFParams As Long
 SizeOfUDFParams = ListOfUDFParameters.Count
 Dim UDFParam As Parameter
 For i = 1 To SizeOfUDFParams  
  Set UDFParam = ListOfUDFParameters.Item(i)
  Dim UDFParamName,UDFParamValue As String
  UDFParamName = ListOfUDFParamNames(j - 1)
  UDFParamValue = UDFParam.ValueAsString
 'Redefine Param Value
  If (UDFParamName = "Snipe Radius") Then
    UDFParam.ValuateFromString ("52mm")
  End If
 Next
 ' Define the Context
 Dim FactoryRef As SfmFunctionFactory
 Set FactoryRef = PartObj.GetCustomerFactory("SfmFunctionFactory")
 Dim ListOfContexts As SfmReferences
 Set ListOfContexts = FactoryRef.SfmReferences
 Dim Limit As Reference
 Set Limit = PartObj.CreateReferenceFromObject(SfmSuperPlateObj)
 ListOfContexts.Add Limit
 ' Create the Endcut
 Dim EndCutObj As SfmEndcut
 Set EndCutObj = SfmStiffenerObj.AddEndcut(1, "Snipe", "T-CTX-PLATE", ListOfContexts, ListOfUDFParameters)
 ' For Non Conetxtual Endcuts pass Nothing for iListContext
 Set EndCutObj = SfmStiffenerObj.AddEndcut(1, "Snipe", "Web_Snipe_Radius", Nothing, ListOfUDFParameters)
 
Sub GetEndCoord( oCoord)
Retrieves the coordinates of the member's end extremity.
Example
:
This example retrieves in EndExtr the end extremity coordinates of the SfmProfile feature.
 SfmProfile.GetEndCoord EndExtr
 
Func GetEndcut( iExtremityIndex) As
Retrieves Existing Endcut on Profile.
Parameters:
iExtremityIndex
[in] Extremity of Profile(1-Start,2-End).
oSfmEndcut
[out] Retrieved Endcut.
Returns:
S_OK if everything ran ok
Example
:
This example gets the Existing Endcut.
 Dim EndCutObj As SfmEndcut
 Set EndCutObj = ProfileObj.GetEndcut(1)
 
Func GetProfileLimit( iExtremityIndex) As
Returns the limit at an Extremity of a Profile.
Parameters:
iExtremityIndex
[in] Extremity of Profile(1-Start,2-End).
oLimit
[out] Existing Limit.
Returns:
S_OK if everything ran ok.
Example
:
This example retrieves the Start Limit of a Stiffener.
 Dim ProfileLimit As Reference
 Set ProfileLimit = SuperStiffenerObj.GetProfileLimit(1)
 
Sub GetSectionAxis( iAbside, iOrigin, ioVector1, ioVector2, ioVector3)
Retrieves the axis system of the section at a given location on the member's support.
Example
:
This example retrieves in Origin, Vector1, Vector2, Vector3 the section axis at the start extremity of the SfmProfile feature.
 Dim Origin, Vector1, Vector2, Vector3 As 
 SfmProfile.GetSectionAxis 0., Origin, Vector1, Vector2, Vector3
 
Func GetSlotsOnProfile() As
Retrieves Slots on Profile.
Parameters:
oSfmSlots
[out] Slots.
Returns:
S_OK if everything ran ok
Example
:
This example gets the Slots.
 Dim SlotsonProfile As SfmSlots
 Set SlotsonProfile = ProfileObj.GetSlotsOnProfile
 
Sub GetStartCoord( oCoord)
Retrieves the coordinates of the member's start extremity.
Example
:
This example retrieves in StartExtr the start extremity coordinates of the SfmProfile feature.
 SfmProfile.GetStartCoord StartExtr
 
Sub RemoveEndcut( iExtremityIndex)
Removes Existing Endcut on Profile.
Parameters:
iExtremityIndex
[in] Extremity of Profile(1-Start,2-End).
Returns:
S_OK if everything ran ok
Example
:
This example removes the Existing Endcut.
 Dim EndCutObj As SfmEndcut
 Set EndCutObj = ProfileObj.RemoveEndcut(1)
 
Sub Run()
Compute the member's result.
Example
:
This example builds the result of the SfmProfile feature.
 SfmProfile.Run
 
Sub SetProfileLimit( iExtremityIndex, iLimit)
Sets the limit at an Extremity of a Profile.
Parameters:
iExtremityIndex
[in] Extremity of Profile(1-Start,2-End).
iLimit
[in] New Limit to add.
Returns:
S_OK if everything ran ok
Example
:
This example sets the limit at the Extremity.
 Set StiffenerLimit = ObjPart.FindObjectByName("CROSS.115")
 Dim LimitRef As Reference
 Set LimitRef = ObjPart.CreateReferenceFromObject(StiffenerLimit)
 SuperStiffener.SetProfileLimit 2, LimitRef