Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Körper per Catscript mehrmals entfernen!

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:  Körper per Catscript mehrmals entfernen! (2272 mal gelesen)
ChristianWW
Mitglied
KONSTRUKTEUR/ CAM PROGRAMMIERER


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

Beiträge: 31
Registriert: 21.10.2013

erstellt am: 22. Jan. 2015 14: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


CAD_BILD.png

 
Hallo,

Ausgangssituation:

1. Ich habe ein Part mit mehreren Bodies geöffnet.

2.Im Strukturbaum des Parts steht an erster Stelle der Body mit dem  Namen AZK_Beschriftung in dem eine Skizze+Block sich befindet.Unter diesem befinden sich weitere Bodies mit isolieren Volumen.( können 2 oder auch mal 20 sein ).

3. Nun möchte ich per Makro den Body AZK_Beschriftung der Reihe nach von jedem noch vorhandenem Body abziehen(Entfernen mit Boolscher Operation).

Im Angehängten Bild sieht man meine Ausgangssituation.


Hoffe ihr könnt mit helfen

Mfg Christian

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: 22. Jan. 2015 15:02    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 ChristianWW 10 Unities + Antwort hilfreich

Servus
Ich würde so vorgehen:
- MainBody in Bearbeitung setzen
- Schleife über alle Körper
- für jeden Körper prüfen:
      - Körper ist nicht der MainBody
      - Körper ist nicht "verboolet"
      - Körper ist nicht leer
- Körper mit "AddNewRemove" abziehen

Ups, Frage falsch gelesen

Gruß
Bernd

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

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

ChristianWW
Mitglied
KONSTRUKTEUR/ CAM PROGRAMMIERER


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

Beiträge: 31
Registriert: 21.10.2013

erstellt am: 22. Jan. 2015 15:08    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,

das ging ja flott

Ich hab mal was zusammen geschrieben was mir schon mal den ersten körper überspringt und die restlich in der Msgbox ausgibt.

Weiter komm ich nicht!!!!


Sub CATMain()

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim bodies1 As Bodies
Set bodies1 = part1.Bodies

Dim bodies2 As Bodies
Set bodies2 = part1.Bodies

Dim body1 As Body
Set body1 = bodies1.Item("AZK_SCHRIFT")

set Selection1 = CATIA.ActiveDocument.Selection
selection1.Search "CATPrtSearch.BodyFeature,all"
Dim Imax As Integer
Imax = selection1.Count
For n = 2 To Imax

Set body2 = selection1.Item(n).value

MsgBox body2.name

next

End Sub

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: 22. Jan. 2015 17:00    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 ChristianWW 10 Unities + Antwort hilfreich

Servus
Ich würde nicht über die Selektion gehen sondern über die Bodies-Collection (ungetestet):
Code:
Sub CATMain()

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim shapeFactory1 As ShapeFactory
Set shapeFactory1 = part1.ShapeFactory

Dim bodies1 As Bodies
Set bodies1 = part1.Bodies

Dim RemoveBody As Body
Set RemoveBody = bodies1.Item("AZK_SCHRIFT")

dim oBody as Body
for each oBody in  bodies1
    if oBody <> RemoveBody then
            'Body in Bearbeitung setzen
            part1.bodies1 = oBody
            Dim remove1 As Remove
            Set remove1 = shapeFactory1.AddNewRemove(body2)
            part1.Update
    end if
next
End Sub


Vorsicht: Der Abzugskörper darf nicht der MainBody sein.

Gruß
Bernd

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

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

ChristianWW
Mitglied
KONSTRUKTEUR/ CAM PROGRAMMIERER


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

Beiträge: 31
Registriert: 21.10.2013

erstellt am: 22. Jan. 2015 17:10    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


22.01_02.png

 
Hallo Bernd,

vielen Dank erstmal,

hab deinen Code natürlich gleich getestet und muss sagen geht leider nicht.

Fehler siehe Bild.

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: 22. Jan. 2015 17:23    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 ChristianWW 10 Unities + Antwort hilfreich

Servus
Bitte Sytseminfo ausfüllen.
Probiere es mal mit
Code:
if oBody isNot RemoveBody then
Gruß
Bernd

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

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

ChristianWW
Mitglied
KONSTRUKTEUR/ CAM PROGRAMMIERER


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

Beiträge: 31
Registriert: 21.10.2013

erstellt am: 23. Jan. 2015 07:09    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

Guten Morgen,

so Systeminfo ausgefüllt sorry hatte ich vergessen.

if oBody isNot RemoveBody then bzw. if oBody is Not RemoveBody then funktioniert auch nicht.

Es kommt die gleiche Fehlermeldung.

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. Jan. 2015 07:42    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 ChristianWW 10 Unities + Antwort hilfreich

Servus
Code:
If Not (oBody Is RemoveBody ) Then
Gruß
Bernd

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

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

ChristianWW
Mitglied
KONSTRUKTEUR/ CAM PROGRAMMIERER


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

Beiträge: 31
Registriert: 21.10.2013

erstellt am: 23. Jan. 2015 07: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


23.01.png

 
So,

die Zeile scheint jetzt zu passen allerdings nächster Fehler siehe Bild.

Gruß Christian

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

joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 23. Jan. 2015 14:02    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 ChristianWW 10 Unities + Antwort hilfreich

Hallo Christian,

worum ich Dich gerne  bitten würde:

Zeichne bitte mit dem Makro-Rekorder auf, wie Du bisher vorgegangen bist.

Anders ausgedrückt: Zeige mir, dass es möglich ist, ein-und-denselben Body von verschiedenen anderen Bodies abzuziehen.

Ich glaub Dir nicht.

Tschau,
Joe

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. Jan. 2015 14:10    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 ChristianWW 10 Unities + Antwort hilfreich

Servus Christian
Hast du schon versucht das Makro zu verstehen?
(gemäß Kommentar sollte da zB "InWorkObject" irgendwie rein)

@Joe:
Mehrfaches entfernen von einem Körper geht.

Gruß
Bernd

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

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

joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 23. Jan. 2015 15:30    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 ChristianWW 10 Unities + Antwort hilfreich

Hallo Bernd,

I stand corrected.

Da geht tatsächlich makro-technisch mehr als händisch.

Code:

Sub RemoveMulti()
  Dim oAD As Document
  Dim oADP As Part
  Dim oBds As Bodies
  Dim RemoveBody As Body        'body to remove
  Dim oSF As ShapeFactory
  Dim oBody As Body            'body to remove from
  Dim oRemv As Remove          'remove op

  Set oAD = CATIA.ActiveDocument
  Set oADP = oAD.Part
  Set oSF = oADP.ShapeFactory
  Set oBds = oADP.Bodies
 
  Set RemoveBody = oBds.Item("StarDustBody")

  For Each oBody In oBds
      If (oBody.Name = "StarDustBody" = False) _
        And (oBody.Name = "PartBody" = False) Then
       
        oADP.InWorkObject = oBody                'Body in Bearbeitung setzen
        Set oRemv = oSF.AddNewRemove(RemoveBody)
        oADP.Update
      End If
  Next
End Sub


Tschau,
Joe

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

ChristianWW
Mitglied
KONSTRUKTEUR/ CAM PROGRAMMIERER


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

Beiträge: 31
Registriert: 21.10.2013

erstellt am: 28. Jan. 2015 08:34    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

Guten Morgen,

hallo joehz genau das habe ich gesucht. Funktioniert einwandfrei vielen vielen Dank dafür.

Sorry für die verspätete Antwort war krank zu Hause.

Gruß Christian.

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

joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 28. Jan. 2015 13:15    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 ChristianWW 10 Unities + Antwort hilfreich

Ich hab jetzt mal die Anregung vom Bernd aufgegriffen und die If-Abfrage abgeändert.
Dummerweise folgt Catia/VB nicht der angebotenen Logik.
Sowohl für MainBody als auch für RemoveBody wird immer beim Vergleich mit oBody 'False' zurückgegeben.
Irgendwie funktioniert der Vergleich mit oBody so nicht, sprich produziert falsche Ergebnisse.
Code:

Sub RemoveMulti()
   Dim oAD As Document
   Dim oADP As Part
   Dim oBds As Bodies
   Dim RemoveBody As Body        'body to remove
   Dim oSF As ShapeFactory
   Dim oBody As Body             'body to remove from
   Dim oRemv As Remove           'remove op

   Set oAD = CATIA.ActiveDocument
   Set oADP = oAD.Part
   Set oSF = oADP.ShapeFactory
   Set oBds = oADP.Bodies
  
   Set RemoveBody = oBds.Item("StarDustBody")

   For Each oBody In oBds
      If Not(oBody is RemoveBody ) And Not(oBody is oADP.MainBody) Then
      'If (oBody.Name = "StarDustBody" = False) _
         And (oBody.Name = "PartBody" = False) Then
        
         oADP.InWorkObject = oBody                 'Body in Bearbeitung setzen
         Set oRemv = oSF.AddNewRemove(RemoveBody)
         oADP.Update
      End If
   Next
End Sub



@Bernd: Hast Du ein funktionierendes Beispiel?

(Scratching head...)

Joe

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

joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 28. Jan. 2015 15:52    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 ChristianWW 10 Unities + Antwort hilfreich

Ich leg nochmal nach. So funktioniert's:
Code:

Sub RemoveMulti()
  Dim oAD As Document
  Dim oADP As Part
  Dim oBds As Bodies
  Dim RemoveBody As Body        'body to remove
  Dim oSF As ShapeFactory
  Dim oBody As Body            'body to remove from
  Dim oRemv As Remove          'remove op
  Dim i As Integer

  Set oAD = CATIA.ActiveDocument
  Set oADP = oAD.Part
  Set oSF = oADP.ShapeFactory
  Set oBds = oADP.Bodies
 
  Set RemoveBody = oBds.Item("StarDustBody")

'  For Each oBody In oBds
  For i = 1 To oBds.Count
      Set oBody = oBds.Item(i)
      If Not (oBody Is RemoveBody) And Not (oBody Is oADP.MainBody) Then
      'If (oBody.Name = "StarDustBody" = False) _
        And (oBody.Name = "PartBody" = False) Then
       
        oADP.InWorkObject = oBody                'Body in Bearbeitung setzen
        Set oRemv = oSF.AddNewRemove(RemoveBody)
        oADP.Update
      End If
  Next
End Sub



Jetzt stellt sich die Frage, was Catia an der For-Each-Version nicht mag.

Aus der Online-Hilfe zu For-Each

Zitat:

Syntax

For Each element In group
[statements]
[Exit For]
[statements]

Next [element]

For collections, element can only be aVariant variable, a generic object variable, or any specific object variable.
For arrays, element can only be a Variant variable.


Ich hab nach und nach alle 'as Body'-Deklarationen auskommentiert.
Trotzdem: No cigar.

Tschau,
Joe

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



Solution Engineer (m/w/d) Automation & Robotics

Job ID 1397 / Vollzeit/ Teilzeit: Vollzeit / Job Kategorie: Kontraktlogistik / Supply Chain Management / Befristet/Unbefristet: Unbefristet

?Logistics is people business" - dieser Leitsatz macht deutlich, dass die Mitarbeitenden für DACHSER der Schlüsselfaktor für den Unternehmenserfolg sind. Gemeinsam mit rund 34....

Anzeige ansehenAutomatisierungstechnik
joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 28. Jan. 2015 19:16    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 ChristianWW 10 Unities + Antwort hilfreich

Hab's gefunden. Es waren tatsächlich die Deklarationen.

So ffunktioniert's:

Code:

Sub RemoveMulti()
  Dim oAD As Document
  Dim oADP As Object 'Part
  Dim oBds As Object 'Bodies
  Dim RemoveBody As Body          'body to remove
  Dim oSF As ShapeFactory
  Dim oBody  As Body              'body to remove from
  Dim oRemv As Remove              'remove op

  Set oAD = CATIA.ActiveDocument
  Set oADP = oAD.Part
  Set oSF = oADP.ShapeFactory
  Set oBds = oADP.Bodies
 
  Set RemoveBody = oBds.Item("StarDustBody")

  For Each oBody In oBds
      If Not (oBody Is RemoveBody) And Not (oBody Is oADP.MainBody) Then
        oADP.InWorkObject = oBody                'Body in Bearbeitung setzen
        Set oRemv = oSF.AddNewRemove(RemoveBody)
        oADP.Update
      End If
  Next
End Sub



Die meisten Beispiele im I-Net vergleichen mit Part.Body.Name.
Jetzt weiss ich warum.

Tschau,
Joe

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