Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Makro für Flächenextrapolate

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Makro für Flächenextrapolate (1639 mal gelesen)
Nutzvieh
Mitglied
Entwicklungskonstrukteur

Sehen Sie sich das Profil von Nutzvieh an!   Senden Sie eine Private Message an Nutzvieh  Schreiben Sie einen Gästebucheintrag für Nutzvieh

Beiträge: 4
Registriert: 23.05.2016

Windows 7 Professional SP1 64 Bit
Intel Xeon 3,7GHz
64GB RAM
Catia V5-R24

erstellt am: 23. Mai. 2016 12:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich bin neu hier und auch neu im Bereich von Makros.
Habe aber bei einigen Suchen schon gesehen das hier kompetente Leute am Werk sind.

Mir geht es um ein Makro, mit dem ich eine tote Fläche oder einen Extract in ihre Ursprungsfläche versetze und Extrapoliere.

Sollte von der Reihenfolge her so aussehen: Inputfläche -> Surface Untrim -> Boundary -> Extrapolate.

Mit einem aufgezeichneten Makro kommt folgendes raus:

Language="VBSCRIPT"

Sub CATMain()

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies

Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item("Geometrical Set.1")

Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = hybridBody1.HybridShapes

Dim hybridShape1 As HybridShape
Set hybridShape1 = hybridShapes1.Item("Surface Untrim.1")

part1.UpdateObject hybridShape1

Dim hybridShapeFactory1 As Factory
Set hybridShapeFactory1 = part1.HybridShapeFactory

Dim reference1 As Reference
Set reference1 = part1.CreateReferenceFromObject(hybridShape1)

Dim hybridShapeBoundary1 As HybridShapeBoundary
Set hybridShapeBoundary1 = hybridShapeFactory1.AddNewBoundaryOfSurface(reference1)

hybridBody1.AppendHybridShape hybridShapeBoundary1

part1.InWorkObject = hybridShapeBoundary1

part1.Update

Dim reference2 As Reference
Set reference2 = part1.CreateReferenceFromObject(hybridShapeBoundary1)

Dim reference3 As Reference
Set reference3 = part1.CreateReferenceFromObject(hybridShape1)

Dim hybridShapeExtrapol1 As HybridShapeExtrapol
Set hybridShapeExtrapol1 = hybridShapeFactory1.AddNewExtrapolLength(reference2, reference3, 30.000000)

hybridShapeExtrapol1.ContinuityType = 1

hybridShapeExtrapol1.BorderType = 1

hybridShapeExtrapol1.LimitType = 0

hybridShapeExtrapol1.SetAssemble True

hybridShapeExtrapol1.PropagationMode = 0

hybridShapeExtrapol1.ExtendEdgesMode = False

hybridShapeExtrapol1.ConstantLengthMode = False

hybridBody1.AppendHybridShape hybridShapeExtrapol1

part1.InWorkObject = hybridShapeExtrapol1

part1.Update

End Sub

Funktioniert leider nur teilweise so wie erhofft. 
Es wird leider kein Surface Untrim vollzogen, sondern es wird sich immer auf den Surface Untrim.1 bezogen. Und ich kann auch nicht auswählen welche Inputfläche genutzt werden soll.

Ein Fenster das mich nach dem Wert für den Extrapolate fragt wäre auch prima.


Ich würde es selbst machen, da es mich wirklich interessiert und ich da auch gern etwas mehr Ehrfahrung hätte. Ich hab aber leider keine Ahnung wo und wie ich ansetzen muss. 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 23. Mai. 2016 12:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Servus
Willkommen im Forum.
Die Makroaufzeichnung liefert immer Code bei dem auf die Objekte per Namen zugriffen wird.
Bei deinem Code mach die Zeile
Code:
Set hybridShape1 = hybridShapes1.Item("Surface Untrim.1")
Probleme.
Diese Zeile musst durch eine Selektion durch den User ("SelectElement2") ersetzen (siehe auch Forensuche, Doku und Fachbuch).

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

4ppU
Mitglied



Sehen Sie sich das Profil von 4ppU an!   Senden Sie eine Private Message an 4ppU  Schreiben Sie einen Gästebucheintrag für 4ppU

Beiträge: 44
Registriert: 19.04.2016

Unterschiedliche Arbeitsplätze/ Hardware.
Catia V5
Microsoft Visual Basic for Applications

erstellt am: 23. Mai. 2016 13:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Hey ich bin gerade an einer ähnlichen Sache dran.
Ich möchte ein Loch in einer Fläche schließen. Erst mit einem Extract die Kante ermitteln um eine Boundary erstellen und anschließend über Fill schließen.

Ungefährer Aufbau:
Extract
-Userselection für die Kante
-Userselection für den Support (Fläche)
-Boundary entsteht

Fill
-Entstandene Boundary übernehmen und automatisch den Fill erstellen
-Anschließende Abfrage, ob eine weiteres Loch geschlossen werden soll
mit einer Schleife um quasi eine neue UserSelection zu Starten usw...

Der User soll solange immer wieder Löcher schließen können, bis er am Ende nach der Schleife auf "Nein" klickt.

Meint ihr das ist umsetzbar ?      

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 23. Mai. 2016 13:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Servus
@4ppU: ja, sollte machbar sein.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

4ppU
Mitglied



Sehen Sie sich das Profil von 4ppU an!   Senden Sie eine Private Message an 4ppU  Schreiben Sie einen Gästebucheintrag für 4ppU

Beiträge: 44
Registriert: 19.04.2016

Unterschiedliche Arbeitsplätze/ Hardware.
Catia V5
Microsoft Visual Basic for Applications

erstellt am: 24. Mai. 2016 09:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Mooooin,

@Nutzvieh, bist du denn jetzt weitergekommen?
Wo liegt die Schwierigkeit ? Bzw. kannst du das Problem genauer definieren?
Arbeitest du nur mit Infos aus dem Netz? Oder mit Literatur? (z.B. Ziethen, Hanser-Verlag, Catia - Makroprogrammierung mit Visual Basic Script)


@irgendwenanderesderahnunghat, sollte ich meine Idee bzw. mein Thema in einem neuen Thread öffnen, falls da noch weiter Fragen/Bedarf ist ?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 24. Mai. 2016 10:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Servus 4ppU
Ja mach ein neues Thema auf.
Vorher kannst du ja mittels Makroaufzeichnung und deinem Vorwissen (Userselection aus deinem anderen Thema) den Code grob erstellen und dann spezifische Fragen stellen.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

4ppU
Mitglied



Sehen Sie sich das Profil von 4ppU an!   Senden Sie eine Private Message an 4ppU  Schreiben Sie einen Gästebucheintrag für 4ppU

Beiträge: 44
Registriert: 19.04.2016

Unterschiedliche Arbeitsplätze/ Hardware.
Catia V5
Microsoft Visual Basic for Applications

erstellt am: 24. Mai. 2016 10:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Alles klar Bernd,
wird gemacht sobald ich halbwegs was stehen hab und die ersten Fragen aufkommen/definiert sind 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Nutzvieh
Mitglied
Entwicklungskonstrukteur

Sehen Sie sich das Profil von Nutzvieh an!   Senden Sie eine Private Message an Nutzvieh  Schreiben Sie einen Gästebucheintrag für Nutzvieh

Beiträge: 4
Registriert: 23.05.2016

Windows 7 Professional SP1 64 Bit
Intel Xeon 3,7GHz
64GB RAM
Catia V5-R24

erstellt am: 24. Mai. 2016 12:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich bin noch nicht wirklich weiter gekommen. Befasse mich aber auch nicht während meiner Hauptarbeitszeit damit, sondern eher nebenher in der Mittagspause.
Die Schwierigkeit liegt vor allem mal darin das ich von der ganzen Makroprogrammierung überhaupt keine Ahnung hab. 
Ursprünglich dachte ich, Catia kann Makros aufzeichnen, mach mer mal. 
Das jetzt nicht das raus kam was ich wollte ist eben nicht so toll. Muss eben angepasst werden. Aber ohne Ahnung ist das nicht so einfach.

Arbeiten tu ich bis jetzt nur mit Infos aus dem Netz. Und da hab ich bis jetzt noch nicht so viel zur Selection durch den User ("SelectElement2") gefunden, das mir weiter helfen würde.

Das Problem liegt, wie bgrittmann schon gesagt hat, darin das sich Catia immer auf die Fläche der Aufzeichnung bezieht. Und das Makro vollzieht keinen Surface Untrim. Da hatte ich auch schon irgendwo was gelesen das der Befehl bei der Aufzeichnung nicht mitgenommen wird.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 24. Mai. 2016 13:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Nutzvieh 10 Unities + Antwort hilfreich

Servus
Ohne Grundkenntnisse zu VB(A) ist die Makroprogrammierung sehr schwer.
Ein kurze Beschreibung zur Selektion findest du (neben Fachbüchern) hier.
In diesem Fall könnte auch eine PowerCopy (siehe Doku) klappen, dann müsstest du dich nicht in die Makroprogrammierung einarbeiten.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Elektrotechniker im Bereich Entwicklung und Konstruktion von Kabelbäumen (m/w/d)

Unser Mandant hat eine langjährige Erfahrung im Bereich der Kabelkonfektionierung und dem Einsatz modernster Fertigungstechnologien zur Sicherung der hohen Ansprüche an Service und Produktqualität. Vom kompletten Kabelbaum bis zur fertig konfektionierten und bedruckten Litze wird das komplette Spektrum angeboten. Als Serienfertigung, exakt auf die Taktzeiten der Produktionsabläufe beim Kunden abgestimmt bis hin zur Kleinserie oder Prototyp in Einzelfertigung....

Anzeige ansehenElektrotechnik, Elektronik
Nutzvieh
Mitglied
Entwicklungskonstrukteur

Sehen Sie sich das Profil von Nutzvieh an!   Senden Sie eine Private Message an Nutzvieh  Schreiben Sie einen Gästebucheintrag für Nutzvieh

Beiträge: 4
Registriert: 23.05.2016

Windows 7 Professional SP1 64 Bit
Intel Xeon 3,7GHz
64GB RAM
Catia V5-R24

erstellt am: 24. Mai. 2016 13:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Das es kein Zuckerschlecken wird war mir klar.

Richtig, es würde auch über eine PowerCopy gehen. Das wäre viel einfacher und könnte (fast) jeder.

Hintergrund der ganzen Sache ist das wir gerne mehr mit Makros arbeiten würden. Auch für komplexere Sachen. Unsere bisherigen Makros wurden immer außer Haus geschrieben. Das hätten wir aber gern Inhouse.
Ich dachte mir ich fang mal mit etwas an was uns öfter betrifft und augenscheinlich einfach erscheint.

Mein Chef schaut mal ob er Bücher dazu hat.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz