Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  SelectElement2 Methode bei Branchable

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:  SelectElement2 Methode bei Branchable (2006 mal gelesen)
Thunderflash
Mitglied
Konstrukteur Bordnetz

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

Beiträge: 4
Registriert: 14.09.2012

erstellt am: 24. Nov. 2012 19: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 Ihr Lieben,

ich bäuchte mal eure Hilfe. Ich arbeitere gerade mit der Kabelbaumentwicklung und versuche mit der Methode SelectElement2 ein Branchable oder Bundle Segment zu selektieren.
Leider hab ich bis jetzt immer noch nicht herausgefunden, welchen Opjekttyp ich für den Suchfilter einsetzen muss. Bisher mache ich es über eine Rippe und schließe dann von der Nummerierung auf den Branchable.(Rippe.1 = Branchable.1).

Das funktioniert soweit auch, leider finde ich die Lösung suboptimal,da ich den Brachable nicht im Strukturbaum auswählen kann und auch Rippen auswählen könnte.

Weiß jemand, wie den ObjektTyp für den Filter herausbekomme?


Code:
Dim Was(0), Rippe(0)
    Was(0) = "Part"
    Rippe(0) = "Rib"

'********Selektion definieren und leeren***********
    Dim UserSel
    Set UserSel = CATIA.ActiveDocument.Selection
    UserSel.Clear

    '*****************Auswahl festlegen ***************************

        MsgBox "Wählen Sie den Multibranchable", vbOKOnly, makroname + " " + version
        eingabe = UserSel.SelectElement2(Was, "Multibranchable auswählen", False)
        If eingabe = "Normal" Then
       
                Dim p1 As String
                p1 = UserSel.Item(1).Value.Parent.Name 'Produkt-Mehrfachverzweigbar1.CATPart

                Dim documents1 As Documents       
                Set documents1 = CATIA.Documents   

                Dim partDocument1 As PartDocument
                Set partDocument1 = documents1.Item(p1)
       
                Dim p As String
                p = UserSel.Item(1).Value.Name 'Produkt-Mehrfachverzweigbar1

                Dim part1 As Part                 
                Set part1 = partDocument1.Part
           
                Dim parameters1 As Parameters
                Set parameters1 = part1.Parameters
               
'*******************Auswahl über Rib festlegen*************************************************
'Da anzunehmen ist, dass der Name der Rib sowie des Bundlesegmentes nicht geändert werden und die Indizes dieselben sind
           
                UserSel.Clear

                Dim bundleseg, index, laenge, diff, nummer
                MsgBox "wählen Sie ein Bündelsegment", vbOKOnly, makroname + " " + version
                bundleseg = UserSel.SelectElement2(Rippe, "Wählen Sie ein Bündelsegment", False)
                If bundleseg = "Normal" Then
                    If (Left(UserSel.Item(1).Value.Name, 3) = "Rib") Then
                        laenge = Len(UserSel.Item(1).Value.Name)
                        index = InStrRev(UserSel.Item(1).Value.Name, ".")
                        diff = laenge - index
                        nummer = Right(UserSel.Item(1).Value.Name, diff)
                       
                    Else
                    Exit Sub
                End If
'**********************************************************************************************
               
                Dim pfad As String
                pfad = (p + "\Constraints\" + "Bundle Segment." + CStr(nummer) + "\Diameter")
             
                Dim dimension1 As Dimension
                Set dimension1 = parameters1.Item(pfad)
                                                                                           
                dimension1.Value = rundung
         
                part1.Update 'Part wird aktualisiert
         
                MsgBox "Anpassung Erfolgreich!", vbOKOnly, makroname + " " + version
             
         
           
   


------------------
Wenn du willst, das etwas richtig gemacht wird, dann mach es selber!!

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. Nov. 2012 23:19    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 Thunderflash 10 Unities + Antwort hilfreich

Servus
Willkommen in Forum.
Du kannst den Typ folgender maßen auslesen: Branchable selektieren (von Hand) und über TypeName den Typ ausgeben (oder eben im Watch-Fenster das Objekt anschauen)

Gruß
Bernd

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

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

Thunderflash
Mitglied
Konstrukteur Bordnetz

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

Beiträge: 4
Registriert: 14.09.2012

erstellt am: 25. Nov. 2012 13: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


Branchable.png


Fehler.png

 
Hallo,
erstmal danke für die schnelle Antwort.
Ich hatte jetzt mal folgendes versucht.

Code:
Sub CATMain()

        Dim activedoc As Document
        Set activedoc = CATIA.ActiveDocument

        Dim oselection As Selection
        Set oselection = activedoc.Selection
 
        MsgBox oselection.Item2(1).Type
End Sub


Das liefert mir auch für alle Elemente den passenden Typ für den Filter, nur eben nicht für ein Bundlesegment. Das Branchble liefert mir Product, womit ich so aber nichts anfangen kann.Das ganze scheint doch nicht so trivial, wie anfangs angenommen. Ich hab mal die Bilder mit hochgeladen.
Vielleicht liegt das auch an mir, aber ich komme einfach nicht drauf.
Noch jemand eine Idee, woran das liegen könnte?


------------------
Wenn du willst, das etwas richtig gemacht wird, dann mach es selber!!

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: 26. Nov. 2012 09:37    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 Thunderflash 10 Unities + Antwort hilfreich

Code:

Sub CATMain()

        Dim activedoc As Document
        Set activedoc = CATIA.ActiveDocument

        Dim oselection As Selection
        Set oselection = activedoc.Selection

        Call MsgBox(TypenName(oselection.Item2(1).value))
End Sub


Edit: Eventuell hilft hier auch das Such-Fenster, wo man den Typ durch Auswählen herausfinden kann.
Oder mach einmal eine Makroaufzeichnung, wie Du solch ein Element erzeugst, eventuell findet sich dann in der AUfzeichnung etwas.
Möglich ist aber auch, dass der Typ an der API nicht vorhanden ist.

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

[Diese Nachricht wurde von HoBLila am 26. Nov. 2012 editiert.]

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

Thunderflash
Mitglied
Konstrukteur Bordnetz

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

Beiträge: 4
Registriert: 14.09.2012

erstellt am: 26. Nov. 2012 18: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

Das liefert leider das gleiche Ergebnis. Die Makroaufzeichnung hilft mit hier leider auch nicht weiter.

Wie kann ich das Problem denn dann lösen, wenn der Typ nicht in der API nicht vorhanden ist?

------------------
Wenn du willst, das etwas richtig gemacht wird, dann mach es selber!!

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: 27. Nov. 2012 17:19    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 Thunderflash 10 Unities + Antwort hilfreich

Anfrage an Dassault stellen (PMR) es über die API zugänglich zu machen.

Ist mühsig, aber wenn sie etwas nicht freigegeben haben, gibts kaum Alternativen. :-(

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

Thunderflash
Mitglied
Konstrukteur Bordnetz

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

Beiträge: 4
Registriert: 14.09.2012

erstellt am: 28. Nov. 2012 19: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

Hmm, naja muss ich mal sehen, ansonsten belasse ich das erst so.

Nochmal eine andere Frage. In meinen Bildern oben sieht man ja die Branchable. Ist es ohne CAA möglich herauszufinden, welche miteinander verbunden sind?

------------------
Wenn du willst, das etwas richtig gemacht wird, dann mach es selber!!

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