Autor
|
Thema: DrawingViewGenerativeBehavior funktioniert ab CATIA R28 nicht mehr (422 / mal gelesen)
|
shaitan80 Mitglied Konstrukteur
Beiträge: 12 Registriert: 08.12.2008 DELL Precission M6500, Intel Core i7 Q840, 12Gb RAM, NVidia Quattro FX2800M
|
erstellt am: 26. Apr. 2023 14:54 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, Ich versuche gerade das Makro für Beschriftungenerstellung aus dem Buch von Jens Hansen auf C# umzubauen. Weiß jemand, ob es eine Möglichkeit gibt ab CATIA R28 folgende Codeabschnitt lauffähig zu machen? In R26 funktioniert es Code:
public void CreateGravur(string text) { PartDocument? partDoc = CatConnect.Instance._catia.ActiveDocument as PartDocument; Selection mySelection = CatConnect.Instance._catia.ActiveDocument.Selection; Object[] inputObjectType1 = new Object[1]; inputObjectType1[0] = "PlanarFace"; mySelection.Clear(); MessageBox.Show("Please select a planar surface"); Reference surface1 = mySelection.Item(1).Reference; partDoc.Part.InWorkObject = (AnyObject)surface1.Parent; Object[] inputObjectType2 = new Object[1]; inputObjectType2[0] = "Point"; mySelection.Clear(); MessageBox.Show("Please select a point"); var myPoint = mySelection.Item(1).Value; CatConnect.Instance._catia.Documents.Add("Drawing"); DrawingDocument? drawingDoc1 = (DrawingDocument?)CatConnect.Instance._catia.ActiveDocument; DrawingSheet drawingSheet1 = drawingDoc1.Sheets.ActiveSheet; DrawingView drawingView1 = drawingSheet1.Views.Add("Beschriftung"); DrawingViewGenerativeBehavior drawingViewGenerativeBehavior1 = drawingView1.GenerativeBehavior; drawingViewGenerativeBehavior1.DefineFrontView(1, 0, 0, 0, 1, 0); drawingView1.x = 0; drawingView1.y = 0; drawingView1.Scale2 = 1; drawingView1.Activate(); var text1 = drawingView1.Texts.Add(text,0,0); }
Bei dieser Zeile: "DrawingViewGenerativeBehavior drawingViewGenerativeBehavior1 = drawingView1.GenerativeBehavior;" kommt folgende Fehlermeldung: System.Runtime.InteropServices.COMException: 'Ausnahmefehler des Servers. (0x80010105 (RPC_E_SERVERFAULT))' Hat jemand eine Idee, wie kann man das beheben?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11797 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 26. Apr. 2023 16:36 <-- editieren / zitieren --> Unities abgeben: Nur für shaitan80
Servus Um den Fehler besser einzuschränken (und da ich mich nicht C# auskenne): - geht das noch mit einem anderen Catia Release?
- geht GenerativeBehavior in R28 noch in VBA
- du hast schon nach dem Fehler im Internet gesucht? Könnte sein dass es nicht an der Methode liegt sondern generell mit der COM-Schnittstelle
Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Randle Mitglied CAD/PLM Consultant
Beiträge: 700 Registriert: 12.04.2003 Win10 x64 CATIA V5 R18, R19, R21, R27-29
|
erstellt am: 27. Apr. 2023 07:50 <-- editieren / zitieren --> Unities abgeben: Nur für shaitan80
Moin, also am CATIA Release selber dürfte es nicht liegen. Ich nutze GenerativeBehavior für einen Kunden der mit R30 arbeitet ohne diese Probleme. Gruß Randle ------------------ Planung ersetzt Fehler durch Irrtum! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
shaitan80 Mitglied Konstrukteur
Beiträge: 12 Registriert: 08.12.2008 DELL Precission M6500, Intel Core i7 Q840, 12Gb RAM, NVidia Quattro FX2800M
|
erstellt am: 27. Apr. 2023 12:57 <-- editieren / zitieren --> Unities abgeben:
Wie ich schon geschrieben habe: mit R26 läuft der Code problemlos durch. Das Problem, dass ich nicht ein supererfahrener Entwickler bin. Ich mache ein Fernstudium zu einem C# Enwickler seit 09.2022. Wenn ich spaßeshalber anstatt GenerativeBehavior, ReferenceView nutze, dann funktioniert die Zeile, aber es ist hal nicht mein Ziel ))
Code:
DrawingViewGenerativeBehavior drawingViewGenerativeBehavior1 = (DrawingViewGenerativeBehavior)drawingView1.ReferenceView; //- funktioniertDrawingViewGenerativeBehavior drawingViewGenerativeBehavior1 = drawingView1.GenerativeBehavior; //- nicht funktioniert
Und es ist wichtig zu erwähnen: CATIA API ist für mich ebenso ein Neuland [Diese Nachricht wurde von shaitan80 am 27. Apr. 2023 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
shaitan80 Mitglied Konstrukteur
Beiträge: 12 Registriert: 08.12.2008 DELL Precission M6500, Intel Core i7 Q840, 12Gb RAM, NVidia Quattro FX2800M
|
erstellt am: 27. Apr. 2023 13:09 <-- editieren / zitieren --> Unities abgeben:
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|