Ich habe jetzt mal ein Beispiel geschrieben welches sich jeweils 2 Ebenen nimmt und diese in die matingcondition Klasse übergibt.
Problem ist eigentlich ich weiss nicht was ich da übergeben soll.
Die Klasse verlangt ja „TAG“ was mich irgendwie verwundert.
Bei der Zeile mc_data.constraints(0) = mateConstr() meckert er nun.
Ich denke das Problem ist meine Definition von mateConstr aber ehrlich die Doko ist da ein Buch mit 7Siegeln für mich.
Kennt sich jmd damit aus?
Option Strict Off
Imports System
Imports System.Collections
Imports NXOpen
Imports NXOpenUI
Imports NXOpen.UI
Imports NXOpen.Assemblies
Imports NXOpen.Positioning
Imports NXOpen.UF
Imports NXOpen.Utilities
Module NXJournal
Sub Main
Dim theSession As Session = Session.GetSession()
Dim workPart As Part = theSession.Parts.Work
Dim displayPart As Part = theSession.Parts.Display
Dim theUFSession As UFSession = UFSession.GetUFSession()
Dim mateConstr As NXOpen.UF.UFAssem.Constraint
mateConstr = new UFAssem.Constraint()
Dim mc_data As UFAssem.MatingCondition = new UFAssem.MatingCondition()
Dim from_occ As Tag
Dim to_ooc As Tag
Dim component1 As Assemblies.Component = CType(workPart.ComponentAssembly.FindObject("HANDLE O-168"), Assemblies.Component)
Dim datumPlane1 As DatumPlane = CType(component1.FindObject("PROTO#HANDLE R-792"), DatumPlane)
Dim component2 As Assemblies.Component = CType(workPart.ComponentAssembly.FindObject("HANDLE O-23"), Assemblies.Component)
Dim datumPlane2 As DatumPlane = CType(component2.FindObject("PROTO#HANDLE R-2398"), DatumPlane)
mateConstr.from_Status = UFAssem.LoadStatus.OK
mateConstr.to_Status = UFAssem.LoadStatus.OK
mateConstr.mate_Type = UFConstants.UF_ASSEM_v16_mate
mateConstr.from_Type = UFConstants.UF_ASSEM_planar_face
mateConstr.to_Type = UFConstants.UF_ASSEM_planar_face
mateConstr.from = theUFSession.assem().askPrototypeOfOcc(datumPlane1.tag)
mateConstr.from_Part_Occ = theUFSession.assem().askPartOccurrence(component1.tag)
mateConstr.to = theUFSession.assem().askPrototypeOfOcc(datumPlane2.tag)
mateConstr.to_Part_Occ = theUFSession.assem().askPartOccurrence(component2.tag)
mateConstr.offset = 1
mateConstr.name = ""
mateConstr.user_Name = false
mc_data.num_Constraints = 1
mc_data.constraints(0) = mateConstr()
mc_data.mated_Object = theUFSession.assem().askInstOfPartOcc(theUFSession.assem().askPartOccurrence(datumPlane1.tag))
mc_data.name = ""
mc_data.user_Name = false
mc_data.suppressed = false
End Sub
End Module
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP