Forums:
Hi all,
please check the below code I need some tweaks in this
1. remove parameters of extracted bodies
2. add color and transparency to bodies
3. rotate bodies about user input axis at user input angle
' NX 10.0.1.4' Journal created by gashaik on Sat Jun 27 14:16:08 2016 India Standard Time' Extracts Body from wavelink to work prat without link Option Strict OffImports System Imports NXOpen Imports NXOpen.UF Module Module1 Sub Main() Dim theSession As Session = Session.GetSession()Dim workPart As Part = theSession.Parts.Work Dim mySolids()As NXObject If SelectObjects("Select Solids to Link", mySolids)= Selection.Response.CancelThenExitSubEndIf Dim markId1 As Session.UndoMarkId markId1 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Start") Dim nullFeatures_Feature As Features.Feature=Nothing IfNot workPart.Preferences.Modeling.GetHistoryModeThenThrow(New Exception("Create or edit of a Feature was recorded in History Mode but playback is in History-Free Mode."))EndIf Dim waveLinkBuilder1 As Features.WaveLinkBuilder waveLinkBuilder1 = workPart.BaseFeatures.CreateWaveLinkBuilder(nullFeatures_Feature) Dim extractFaceBuilder1 As Features.ExtractFaceBuilder extractFaceBuilder1 = waveLinkBuilder1.ExtractFaceBuilder extractFaceBuilder1.FaceOption= Features.ExtractFaceBuilder.FaceOptionType.FaceChain waveLinkBuilder1.Type= Features.WaveLinkBuilder.Types.BodyLink extractFaceBuilder1.FaceOption= Features.ExtractFaceBuilder.FaceOptionType.FaceChain waveLinkBuilder1.CopyThreads=False extractFaceBuilder1.ParentPart= Features.ExtractFaceBuilder.ParentPartType.OtherPart theSession.SetUndoMarkName(markId1, "WAVE Geometry Linker Dialog") extractFaceBuilder1.Associative=False extractFaceBuilder1.FixAtCurrentTimestamp=False extractFaceBuilder1.HideOriginal=False extractFaceBuilder1.InheritDisplayProperties=False Dim selectObjectList1 As SelectObjectList selectObjectList1 = extractFaceBuilder1.BodyToExtract extractFaceBuilder1.CopyThreads=False Dim added1 AsBoolean added1 = selectObjectList1.Add(mySolids) Dim nXObject1 As NXObject nXObject1 = waveLinkBuilder1.Commit() theSession.SetUndoMarkName(markId1, "WAVE Geometry Linker") waveLinkBuilder1.Destroy() EndSub Function SelectObjects(ByVal prompt AsString, byRef selObj()as NXObject)As Selection.Response Dim theUI As UI = UI.GetUIDim title AsString="Selection"Dim includeFeatures AsBoolean=FalseDim keepHighlighted AsBoolean=FalseDim selAction As Selection.SelectionAction= _ Selection.SelectionAction.ClearAndEnableSpecific Dim scope As Selection.SelectionScope= Selection.SelectionScope.AnyInAssemblyDim selectionMask_array(1)As Selection.MaskTriple With selectionMask_array(0) .Type= UFConstants.UF_solid_type .subtype=0 .SolidBodySubtype= UFConstants.UF_UI_SEL_FEATURE_SOLID_BODYEndWith Dim resp As Selection.Response= theUI.SelectionManager.SelectObjects( _ prompt, title, scope, selAction, _ includeFeatures, keepHighlighted, selectionMask_array, selObj) If resp = Selection.Response.OkReturn Selection.Response.OkElseReturn Selection.Response.CancelEndIf EndFunction End Module