Autor
|
Thema: Externe Referenzen (3921 mal gelesen)
|
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 29. Aug. 2008 12:20 <-- editieren / zitieren --> Unities abgeben:
Hallo Ihr, ich habe mal wieder ein Problem für Euch. Es könnte auch ein Catiafehler(ha ha) sein! Ich möchte ein automatisches Bohrungsmakro schreiben und bin auf diesen Fehler(?) gestossen ?? Folgendes Vorgehen. Ein Product erzeugen mit zwei Parts. In dem ersten Part zwei Skizzen anlegen. In diesen Skizzen Punkte erzeugen. Skizzen veröffentlichen. Dann in das zweite Part wechseln und großzuegig einen Block um die Punkte erzeugen. Die Skizzen mit "As Result with Link" in das zweite Part kopieren. Dann ein Macro aufzeichen. Es ist egal ob mit VBS oder .CATScript. Dann eine Bohrung setzen: Punkt der 1. kopierten Skizze wählen, Deckfläche des Blocks waehlen. Bohrung ist fertig. Macroaufzeichnung beenden. Die soeben erzeugte Bohrung löschen und das Macro starten. Bohrung wird wieder erzeugt. Wenn das alles soweit geklappt hat, dann ein neues Macro aufzeichnen, aber mit der 2. kopierten Skizze. Auch hier die erzeuget Bohrung löschen und das Macro neu starten. Ich habe diese Vorgehensweise auf verschiedene Rechner probiert. Immer der selbe Fehler!! Catia verliert irgendwie die Referenz bzw. es wird die zweite externe Referenz nicht richtig ausgewertet!! Auch wenn das Part mit "Open in new Window" ist, kommte dieser Fehler! Hat jemand eine Idee wie ich an die Referencen (Vertex) komme??? Schönes Wochenende JPF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 29. Aug. 2008 12:51 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Ich würde mal den genauen Wortlaut oder Fehlercode der Meldung benötigen. Dann kann man Referenzen auch selbst zusammen bauen, sind nur Strings, die gewissen Gesetzen folgen. Und dass die Links verloren gehen ist im CATIA durchaus normal ^^ Das liegt oft an den unterschiedlichen Instanzen, sprich wenn du ein Objekt mehrfach hast, dann nimmt CATIA immer nur das erste davon, auch wnen du das zweite auswählst. Werde nochmal über das Problem nachdenken... ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 29. Aug. 2008 13:04 <-- editieren / zitieren --> Unities abgeben:
|
Florian Held Mitglied Teamleiter CAD-Solutions
Beiträge: 81 Registriert: 07.09.2006
|
erstellt am: 29. Aug. 2008 13:32 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hmh, Aufgezeichneten Quellcode muss man oft noch nachbessern damit er sauber funktioniert. Aufzeichnungen spucken oft Code aus der in etwa wie folgt lautet: Nimm Aus Skizze.1\Scheitelpunkt.3 Sobald man das Makro dann auf ein Part anwendet wo die Skizze.2 heist hat man schon ein Problem. Schon einmal probiert das Makro so aufzubauen dass der User den Punkt bzw. die Skizze mit den Punkten selektieren soll? Oder geht dies zu weit von der Richtung weg was das Makro machen soll? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 01. Sep. 2008 09:37 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Das hört sich wie ein Problem an, was ich neulich erst hatte. Und zwar ging es bei mir darum ein Bohrungsmakro zu schreiben, welches die Bohrungen durch alle Bauteile treibt, so dass diese nicht in jedes Teil neu angelegt werden müssen, was ja sehr lästig ist. Da war das Problem, dass CATIA einen speziellen Punkt oder so nur einmal veröffentlicht für die Bohrung akzeptiert, da dieser fehlerhaft übergeben wurde. Sprich, es dufte nur ein solcher fehlerhafter punkt existieren. Meine vermutung also: Wenn du das Makro 2x ausführst, ohne die Elemente aus der erssten Verarbeitung zu löschen, dann geht es auch nicht, weil nur ein fehlerhafter punkt existieren darf. Ich schaue heute oder Morgen Abend nochmal, ob sich die Probleme übershcneiden, falls bis dahin keien Lösung existiert. Ich musste damals eine Referenz selbst zusammen bauen. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 02. Sep. 2008 11:38 <-- editieren / zitieren --> Unities abgeben:
|
tomtom1972 Mitglied dipl ing maschinenbau
Beiträge: 605 Registriert: 22.03.2005 NVidia Quadro K4000 Intel Xeon E5-1620, 64GB RAM Windows10 64bit R30 <= CATIA V5 > =R19
|
erstellt am: 03. Sep. 2008 05:40 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hallo, kannst du den aufgezeichneten Code hier einstellen? Dann ist es für uns alle einfacher uns Gedanken darüber zu machen ohne die Zeit zum selbst aufzeichnen verwenden zu müssen. Gruß TomTom ------------------ tomtom1972 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 03. Sep. 2008 07:07 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen TomTom, hier die Scripte und ein Screenshot von Catia. Bohrungen (blau) mit der externen Referenz 1. funktionieren immer Bohrungen (gelb) mit der exterenen Refernz 2. funktionieren nie Gruss JPF
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 03. Sep. 2008 09:02 <-- editieren / zitieren --> Unities abgeben:
noch ein Nachtrag: Ich glaube mittlerweile, dass die Schnittstelle (bzw. Catia) einen Fehler hat. Wenn ich die erste externe Referenz aus dem Part lösche, dann funktioniert auch das 2. Script. Wie es scheint, wird nur eine externe Referenz mit einem Script korrekt aufgelöst. Gruss JPF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 08. Sep. 2008 06:44 <-- editieren / zitieren --> Unities abgeben:
|
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 10. Sep. 2008 10:58 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, auch wenn hier im Forum keiner helfen konnte, hier der vorerst letzte Stand. Dieser Fehler wurde nach IBM geschickt. IBM konnte den Fehler bestätigen und hat ihn zu DS gesendet. Wenn ein Ergebnis vorliegt melde ich mich.... Gruss JPF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JPF Mitglied Programmierer
Beiträge: 128 Registriert: 17.08.2001 CATIA V5R19 SP9--HP420,Intel(R) Xeon(R) CPU E5-1620 3.60GHz,32 GB Ram, NVIDIA Quadro 2000--Windows 7 Enterprise 64bit
|
erstellt am: 06. Mai. 2009 06:50 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, lang, lang ist es her. DS hat sich gemeldet! Ab V5R19SP3 ist das Problem mit den Referenzen gelöst. Set reference1 = part1.CreateReferenceFromBRepName("BorderFVertex BEdge Brp Sketch.1;(Brp Datum.1;%1)));None Limits1 );Limi........... Der Fehler lag an dem Datum.1, es wurde von Catia nicht erkannt. Vielleicht kann mir einer sagen was dieser Zähler macht! Zählt er vielleicht die eingefügten Bohrungen??? Gruss JPF
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 12. Mai. 2009 09:18 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hallo JPF, das Problem habe ich schon gehabt, es gibt auch einen Beitrag von mir dazu. Die Lösung ist folgende: Man darf nicht direkt den Punkt als Referenz angeben, beim erzeugen der Bohrung. Erst die Bohrung einfach an der xyz Koordinate erzeugen, dann die SKizze öffnen und den Punkt (Stern der Bohrung) mit Constraint auf den Ref-Punkt verknüpfen. Geht immer und stabil! Trotzdem gut zu hören, dass der Fehler behoben ist. ------------------ ----------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Filippo Mitglied CAx-Systemverwalter
Beiträge: 168 Registriert: 09.11.2003
|
erstellt am: 12. Mai. 2009 12:20 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hallo JPF, Zitat: Hallo Zusammen, lang, lang ist es her. DS hat sich gemeldet! Ab V5R19SP3 ist das Problem mit den Referenzen gelöst.
kann ich leider nicht bestätigen! @noir333:
Zitat: Man darf nicht direkt den Punkt als Referenz angeben, beim erzeugen der Bohrung. Erst die Bohrung einfach an der xyz Koordinate erzeugen, dann die SKizze öffnen und den Punkt (Stern der Bohrung) mit Constraint auf den Ref-Punkt verknüpfen. Geht immer und stabil!
den Punkt musst du trotzdem als Referenz haben, und da ist das Problem. Oder wie bekommst du den Punk? Ciao, Filippo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 12. Mai. 2009 19:49 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hallo Filippo, bei mir war das so, dass der Benutzer einen Punkt aus der verknüpften Skizze auswählt. Dadurch kann ich die Referenz aus der Selection holen. Ansonsten muss man einen Vertexpunkt aus der Skizze über Selection.Search holen.
------------------ ----------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Filippo Mitglied CAx-Systemverwalter
Beiträge: 168 Registriert: 09.11.2003
|
erstellt am: 13. Mai. 2009 10:19 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hallo noir333, das Problem ist aber, wie schon "JPF" schreibt, das es nur dann funktioniert wenn nur eine Skizze als Externe-Referenz im ein Part vorhanden ist. Im Anhang habe ich ein Beispiel mit 3 Parts und 2 Makros. In Part3 sind 2 Skizze als Externe-Referenz vorhanden. Kannst du mal probieren, wenn du Zeit hasst, und mir bescheid geben ob sowas bei dir auch funktioniert? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Filippo Mitglied CAx-Systemverwalter
Beiträge: 168 Registriert: 09.11.2003
|
erstellt am: 13. Mai. 2009 10:22 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
|
GeorgK Mitglied
Beiträge: 619 Registriert: 06.06.2001 Inventor 2017 Siemens NX 8.5 - 12.0 Autocad Mechanical 2017 Catia V5R19 3,4 GHz; 64 GB RAM Windows 10 openSUSE Leap 42.3 Visual Studio 2010 - 2017 Windows 2012 R2 Vault 2017
|
erstellt am: 16. Jun. 2010 10:26 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
|
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 17. Jun. 2010 07:20 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
Hallo GeorgK, ich programmiere für gewöhnlich in .NET (Visual Studio Visual Basic). Da funktioniert folgender Code (auch bei dem Beispiel von Filippo):
Code: bohrung1 = shapefactory1.AddNewHoleFromPoint(X, Y, Z, ref2, 10) sketch1 = bohrung1.Sketch sketch1.OpenEdition() constraints1 = sketch1.Constraints stern1 = sketch1.GeometricElements.Item(2) refstern = MyPart.CreateReferenceFromObject(stern1) constraint1 = constraints1.AddBiEltCst(CatConstraintType.catCstTypeOn, refstern, ref1d) sketch1.CloseEdition()
ref1d ist dabei die Referenz auf den Punkt in der Skizze (Brep) und ref2 die Referenz auf die Ebene oder Teilfläche. Leider ist es mir nicht gelungen das mit einem Makro (Catvbs) hinzubekommen. Warum ist mir schleierhaft... Vielleicht hilft es Dir ja trotzdem. ------------------ ----------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GeorgK Mitglied
Beiträge: 619 Registriert: 06.06.2001
|
erstellt am: 17. Jun. 2010 09:44 <-- editieren / zitieren --> Unities abgeben: Nur für JPF
|