Ich programmiere in C# und nutze die .Net-Library von Unigraphics NX 4. Nun will ich über eine eigene geschriebene dll-File als NX Open-Anwendung auf die MatingCondition innerhalb eines Assemblies zugreifen bzw. verändern.
Wie kann ich nun auf die MatingCondition zugreifen?
Laut API dient
public void InitMc(ref MatingCondition mc_data)
zum initialisieren einer MatingCondition, komischerweise erwartet sie schon eine initialisierte MatingCondition. Führe ich nun folgende Zeilen auf ein geöffnetes Assembly aus:
theSession = Session.GetSession();
theUFSession = UFSession.GetUFSession();
UFAssem.MatingCondition mc = new UFAssem.MatingCondition();
theUFSession.Assem.InitMc(ref mc);
schließt sich Unigraphics komplett ohne eine Fehlermeldung.
Alternativ habe ich versucht über
public void AskMcDataOfCompnt(Tag component, out bool mated, out MatingCondition mc_data)
MatingCondition von Components zu erhalten. Solange die jeweilige Component nicht über Assembly-Verknüpfungen positioniert ist, gibt die Methode eine leere MatingCondition-Objekt zurück. Ist die Component aber über Assembly-Verknüpfungen zu anderen Components positioniert schließt sich Unigraphics wieder komplett und gibt keine Fehlermeldung zurück.
Woran kann dies liegen?
Ich würde mich über eine Antwort sehr freuen.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP