Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Ausgabe von *.item als zahl

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:  Ausgabe von *.item als zahl (759 mal gelesen)
INLU
Mitglied
Konstrukteur Automotive


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

Beiträge: 71
Registriert: 01.03.2008

erstellt am: 23. Mrz. 2008 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

Hallo Zusammen,

ich hab da mal ein Problem!

Ich verbaue über ein Makro (VBA) zwei Bodys, die ich vorher selektieren lasse. Wenn ich über den Namen des  Bodies gehe
(Set aktuell = apart.Bodies.Item(selektionBody))
, dann habe ich ein Problem, wenn ich mehrere Bodies mit dem gleichen Namen habe. Also dachte ich, man geht besser über die Item-Zahl.  Die Bekomme ich aber nicht aus der selection heraus. 
Wie geht das?

Danke im voraus

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

INLU
Mitglied
Konstrukteur Automotive


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

Beiträge: 71
Registriert: 01.03.2008

erstellt am: 05. Mai. 2008 10: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

Hallo,
gibt es auf die obere Frage keine Antwort, oder fehlt etwas in der Beschreibung?
Den als letztes eingefügten Körper kann man über
..item(Body.Count)..... ansprechen.
Aber ich weiss immer noch nicht, wie ich aus einer Selektion ( Nur ein Body) die Itemzahl, also ....Item(Itemzahl)..... herausbekomme.

Ich komme da einfach nicht weiter.

Meine momentahne Lösung sieht so aus:

Sub CATMain()
Dim Doku
Set Doku = CATIA.Documents
Dim Dokument
Set Dokument = CATIA.ActiveDocument

           
'Selektion einbau
Dim InputObjectType(0)
Dim Selection
Dim Usersel

Set Document = CATIA.ActiveDocument: Set Selection = Document.Selection

InputObjectType(0) = "Body"

Usersel = Selection.SelectElement2(InputObjectType, "Einfügeeben selektieren", False)

    If TypeName(CATIA.ActiveDocument) = "PartDocument" Then
                       
        Partname = Selection.Parent.Name
 
    Else
   
        Set seldoc1 = Selection.Item(1).Value
                     
            Do While (TypeName(seldoc1) <> "PartDocument")
              Set seldoc1 = seldoc1.Parent
            Loop

        Partname = seldoc1.Name
       
    End If
   
sel1 = Selection.Item(1).Value.Name

....
....


    Set apart = partDocument1.Part
    Set Wzk3d = apart.ShapeFactory

  --->>>> Set aktuell = apart.Bodies.Item(sel1) <<<---- Problem !
  --->>>> Set bool = apart.Bodies.Item(sel2)    <<<---- Problem !


Beim diesem Code, darf es keine gleich benannten Körper im Part geben!

Kennt jemand eine andere Lösung?

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

Nautilius2005
Mitglied
Diplomand


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

Beiträge: 28
Registriert: 26.03.2008

CATIA V5R16

erstellt am: 05. Mai. 2008 10:22    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 INLU 10 Unities + Antwort hilfreich

Hi INLU,

wieso vergibst du den Körpern kein Index? Also Körper1, Körper2, usw.

Bei gleich benannten Körpern blickt CATIA, bzw das Makro nicht, welche Körper du miteinander verbauen willst.


Gruß


Denis

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

CAMiCADse
Mitglied



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

Beiträge: 177
Registriert: 17.02.2006

V5,R19,SP9

erstellt am: 05. Mai. 2008 13:01    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 INLU 10 Unities + Antwort hilfreich

Hallo INLU,

Wenn der Benutzer den Body selektiert, brauchst du weder den Namen, noch den Index.

Nach der User-Selection:

Code:
Dim body1 as body
set body1 = Selection.Item(1).Value

Dann hast du deinen Body!

(Das ist quasi deine Zeile mit "Set seldoc1 = Selection.Item(1).Value" vor der Schleife)

Gruß
CAMiCADse

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

INLU
Mitglied
Konstrukteur Automotive


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

Beiträge: 71
Registriert: 01.03.2008

erstellt am: 05. Mai. 2008 19: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

Hallo CAMiCADse,

das hat funktioniert!! Vielen Dank.

Ich hatte es vorher so auch probiert, hatte die Variable aber ohne Zuordnung gelassen!
('Dim selbody' und nicht 'Dim selbody as Body')

Super ! Danke

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