|
CAASfdEditStiffener includes seven steps:
- Prolog
- Retrieving the Factory from the Part Document
- Getting the Manager from the Factory
- Retrieving the Super Stiffeners
- Retrieving and Modifying Split Stiffeners
- Modifying a Stiffener on a Shell Plate
- Updating the Part Document
Opens the CAASfdEditStiffener.CATPart in CATIA.
Sub CATMain ()
Dim ObjPart As Part
Set ObjPart = CATIA.ActiveDocument.Part
...
|
This step describes how to get the Structure Functional Modeler factory.
The SfmFactory Object will be used for creating Structure Functional Modeler
objects.
...
'Get the Factory Object
Dim FactoryObj As SfmFactory
Set FactoryObj = ObjPart.GetCustomerFactory ("SfmFactory")
...
|
The SfmManager object is obtained by the GetManager method.
...
'Get the Manager Object
Dim ManagerObj As SfmManager
Set ManagerObj = FactoryObj.GetManager
...
|
This step describes how to get the collection of stiffeners
and how to get one specific element in it.
...
'RETRIEVING THE SUPERSTIFFENERS
Dim SuperStiffeners As References
Set SuperStiffeners = ManagerObj.GetSuperStiffeners
Dim SuperStiffener1, SuperStiffener2, SuperStiffener3 As SfmStiffener
Set SuperStiffener1 = SuperStiffeners.Item(1)
Set SuperStiffener2 = SuperStiffeners.Item(3)
Set SuperStiffener3 = SuperStiffeners.Item(4)
...
|
This step describes how to get seamed stiffeners.
In this case, seamed stiffeners are on the deck.
...
'Retrieving The Seamed Stiffeners on Deck
Dim SplitStiffeners As References
Set SplitStiffeners = SuperStiffener2.SplitProfiles
Dim SplitStiffener1, SplitStiffener2 As Reference
Set SplitStiffener1 = SplitStiffeners. Item(1)
Set SplitStiffener2 = SplitStiffeners. Item(2)
Dim SelectionObj As Selection
Set SelectionObj = CATIA.ActiveDocument.Selection
'DECK STIFFENER
SelectionObj.Add SplitStiffener1
Dim DeckStiffener1 As SfmStiffener
Set DeckStiffener1 = SelectionObj.FindObject("CATIASfmStiffener")
'Checking Name and the Support
Dim stiff name As String
stiff name = DeckStiffener1.Name
Dim DeckStiffSupport As Reference
Set DeckStiffSupport = DeckStiffener1.Support
'Applying Material and Grade
DeckStiffener1.Material = "Aluminium"
DeckStiffener1.Grade = "A47"
'Retrieving and Modifying the side and section Orientation
Dim SideOrient, SectionOrient As Long
SideOrient = DeckStiffener1.SideOrientation
SectionOrient = DeckStiffener1.SectionOrientation
Dim DeckStiff1SideOrnt, DeckStiff1SectionOrnt As Long
DeckStiff1SectionOrnt = -1
DeckStiff1SideOrnt = 6
DeckStiffener1.SideOrientation = DeckStiff1SideOrnt
DeckStiffener1.SectionOrientation = DeckStiff1SectionOrnt
'Modifying the Section
Dim DeckStiffSectionName As String
DeckStiffSectionName = DeckStiffener1.SectionName
DeckStiffener1.SectionName = "WT15x54"
...
|
...
'SHELL STIFFENER
SelectionObj. Add SuperStiffener1
Dim ShellStiffener1 As SfmStiffener
Set ShellStiffener1 = SelectionObj.FindObject("CATIASfmStiffener")
'Retrieving and Modifying Websupport of ShellStiffener
Dim ShellStiffWebSupport As Reference
Set ShellStiffWebSupport = ShellStiffener1.WebSupport
Dim webSupport1 As AnyObject
Set webSupport1 = ObjPart.FindObjectByName("LONG.0")
Dim webSupportRef1 As Reference
Set webSupportRef1 = ObjPart.CreateReferenceFromObject(webSupport1)
ShellStiffener1.WebSupport = webSupportRef1
'Getting Molded Surface Of ShellStiffener
Dim ShellStiffMoldedSurface As Reference
Set ShellStiffMoldedSurface = ShellStiffener1.GetMoldedSurface
'Modifying Anchor Point
Dim ShellStiffAnchorPt As String
ShellStiffAnchorPt = ShellStiffener1.AnchorPoint
ShellStiffener1.AnchorPoint = "catStrWebCenter"
'Getting And Setting Profile Limit
Dim StiffNewLimit As AnyObject
Set StiffNewLimit = ObjPart.FindObjectByName("CROSS.90")
Dim StiffNewLimitRef As Reference
Set StiffNewLimitRef = ObjPart.CreateReferenceFromObject(StiffNewLimit)
ShellStiffener1.SetProfileLimit 1, StiffNewLimitRef
Dim ShellStiffLimitRef As Reference
Set ShellStiffLimitRef = ShellStiffener1.GetProfileLimit(1)
'Returning and Setting the AngleMode
Dim StiffAngleMode As Integer
StiffAngleMode = ShellStiffener1.AngleMode
Dim StiffAngleMode2 As Long
StiffAngleMode2 = 2
Dim AngleModeValidity As Boolean
AngleModeValidity = ShellStiffener1.IsAngleModeValid(StiffAngleMode2)
ShellStiffener1.AngleMode = StiffAngleMode2
'Getting WebSupportOffset of ShellStiffener
ShellStiffener1.webSupportOffset = "30"
Dim ShellStiffwebSupportOffset As Double
ShellStiffwebSupportOffset = ShellStiffener1.webSupportOffset
...
|
Update the Part.
...
'Updating The Part with All Modifications
ObjPart.Update
End Sub
|
|