Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Allgemein
  Makro; Intersect Problem

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co.
  
erp4cad: Das ERP für komplexe CAD-Projekte!, eine Pressemitteilung
Autor Thema:  Makro; Intersect Problem (2202 mal gelesen)
ATw
Mitglied


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

Beiträge: 6
Registriert: 29.01.2013

Catia v5r19

erstellt am: 28. Feb. 2013 16:38    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 miteinander,

ich bin gerade dabei ein Makro zu schreiben, dass aus einem Bauteil einen runden Ausschnitt an beliebiger Position und beliebigem Durchmesser erstellt.

Hierzu erstellt das Makro Zylinder in neuen bodies, welche dann mit den Volumenkörper der vorhandenen bodies des Bauteils mittels  "Intersect" verschnitten werden.
Das ganze funktioniert soweit gut, jedoch ist es bei den gegebenen Bauteil oft der Fall, dass sich der Zylinder mit vorhandenen bodies nicht schneidet. In solchen Fällen kommt es zu einer Fehlermeldung, weil ja keine Schnittmenge vorhanden ist.

Meine Idee ist es, mit meinem Makro zu prüfen, ob ein body eine Schnittmenge mit dem Zylinder hat oder nicht. Ist dies nicht der Fall wird der body automatisch gelöscht.
Und genau hier komme ich nicht weiter. Hat jemand eine Idee, wie ich das mittels Makro realisieren kann?

Ich bin für jeden Rat dankbar!!

Beste Grüße
Andy

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

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: 28. Feb. 2013 16:48    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 ATw 10 Unities + Antwort hilfreich

Messfunktionen der SPA-Workbench.

Z.B. subtrahieren und vorher mit nachher vergleichen.

oder Clash-Analyse

oder das Resultat prüfen

oder Abstände messen

Wahrscheinlich wäre aber eine Powercopy das bessere Mittel der Wahl, als ein Makro.

------------------
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

ATw
Mitglied


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

Beiträge: 6
Registriert: 29.01.2013

Catia v5r19

erstellt am: 13. Mrz. 2013 16: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

Danke dir für deine Antwort.

Leider hat mir das nicht so ganz weiter geholfen. Das Buch, mit dem ich arbeite gibt dazu irgendwie nichts her und das was ich bisher im Internet gefunden habe hilft mir auch nicht weiter.

Ich bin im Umgang mit Makros und Catia allgemein nicht sehr versiert. Daher fehlt mir gerade die Herangehensweise.
Die Erstellung des bisherigen Makros war gut realisierbar, da ich die meisten Befehle durch den Recorder gefunden habe.

Ich habe im Internet Script Fragmente gefunden, die die Abstandsmessung zwischen Linien, Punkten uä ermöglichen, jedoch nicht für ganze bodies.
Wie lässt sich das realiseren?

Wäre es Hilfreich, wenn ich den Code meines bisherigen Makros poste?

Besten Dank schonmal!

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

ATw
Mitglied


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

Beiträge: 6
Registriert: 29.01.2013

Catia v5r19

erstellt am: 15. Mrz. 2013 09:56    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 bins nochmal.
Da ich das mit dem Messen etc nicht hinbekommen habe will ich mein Vorhaben auf eine andere Art realisieren.

Und zwar sollen alle Volumenkörper der bodies in einem body zusammengefasst werden.
Ich erhoffe mir dadurch, dass ich dann bei der Intersect-Anwendung keine Fehlermeldung mehr bekomme.

Aber irgendwie will das auch nicht so richtig funktionieren. Das Makro kopiert mir die shapes nicht in den ersten body, sondern erstellt neue bodies. Hier mal das Makro nur für die Inhaltsübertragung von body zu body:


Sub CATMain()

Dim partDocument As Document
Set partDocument = CATIA.ActiveDocument

Dim part As Part
Set part = partDocument.Part

Dim bodies As Bodies
Set bodies = part.Bodies
Anzahlbodies = bodies.Count

MsgBox(Anzahlbodies)

For I=Anzahlbodies To 2 Step-1

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim selection1 As Selection
Set selection1 = partDocument1.Selection

selection1.Clear

Dim part1 As Part
Set part1 = partDocument1.Part

'Dim bodies1 As Bodies
'Set bodies1 = part1.Bodies

Dim body1 As Body
Set body1 = bodies.Item(I)

Dim shapes1 As Shapes
Set shapes1 = body1.Shapes

Dim solid1 As Shape
Set solid1 = shapes1.Item(1) ' Wie kann ich hier alle solids ansprechen?

selection1.Add solid1

selection1.Copy

Set partDocument1 = CATIA.ActiveDocument

Dim selection2 As Selection
Set selection2 = partDocument1.Selection

selection2.Clear

Dim body2 As Body
Set body2 = bodies.Item(1)
'Set body2 = CATIA.ActiveDocument.Part.MainBody

selection2.Add body2

selection2.Paste

Set partDocument1 = CATIA.ActiveDocument

Dim selection3 As Selection
Set selection3 = partDocument1.Selection

selection3.Clear

selection3.Add body1

selection3.Delete

part.Update
MsgBox("body kopiert")
'MsgBox("Zuschnitt " & I & " erstellt")

Next

End Sub

Ich bin mit meinem Latein langsam am Ende.

Beste Grüße
Andy

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

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: 15. Mrz. 2013 15:05    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 ATw 10 Unities + Antwort hilfreich

Hört sich ähnlich an, wie http://ww3.cad.de/foren/ubb/Forum137/HTML/005225.shtml


Vielleicht gibt es schon den richtigen Denkanstoß.

Ansonsten natürlich ne Schleife über alle Shapes. For ... to ...Count ... Next...

Hast doch schon eine Schleife gebaut.

------------------
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

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)2025 CAD.de | Impressum | Datenschutz