Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Baugruppen-Verdehung feststellen

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:  Baugruppen-Verdehung feststellen (1558 mal gelesen)
jdahm
Mitglied
Konstrukteur


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

Beiträge: 137
Registriert: 01.08.2008

erstellt am: 09. Aug. 2011 15: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

Ab und zu kommt es vor, daß Baugruppen unabsichtlich z.B. um 180° verdreht wurden, was später zu erheblichem Mehraufwand führt, wenn bereits Unterbaugrupen eingefügt wurden.
Im VPM bekommt man das durch "Info Link" heraus.

Läßt sich das auch durch ein VBA-Makro auswerten?
Wenn ja, wie geht man am besten vor?

------------------
Gruß
Jürgen

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: 10. Aug. 2011 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 jdahm 10 Unities + Antwort hilfreich

Versuch das mal http://hoblila.wordpress.com/download/


------------------
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 10. Aug. 2011 editiert.]

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

jdahm
Mitglied
Konstrukteur


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

Beiträge: 137
Registriert: 01.08.2008

erstellt am: 10. Aug. 2011 11:03    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 Henry,
das klingt erstmal vielversprechend.

Leider ist der Zugriff auf Deine Download-Website vom Admin gesperrt.
Ich muß Dein script erstmal zuhause kopieren und in die Firma schicken.
Ich melde mich, wenn ich's ausprobiert habe.

------------------
Gruß
Jürgen

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: 10. Aug. 2011 15: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 jdahm 10 Unities + Antwort hilfreich


EditTransformation.zip

 
Werde mich heute Abend bemühen den Donwloadlink woanders hin zu legen, damit es einfacher zu benutzen wird und Du den Ärger nicht mehr hast.

Edit: Habe gerade keinen anderen sinnvollen Space, daher habe ich das Makro hier mal angehängt.

------------------
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 10. Aug. 2011 editiert.]

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

jdahm
Mitglied
Konstrukteur


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

Beiträge: 137
Registriert: 01.08.2008

erstellt am: 19. Aug. 2011 17: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


Makro_Edit_Transformations.jpg

 
Hallo Henry,
komme leider heute erst dazu, Dein script zu testen. Es scheitert aber schon beim Aufrufen daran, daß ich ein Paßwort eingeben muß.
Starte ich es nicht über den VB- Editor sondern über Tools => Macro => Macros mit "Run", passiert gar nichts.

------------------
Gruß
Jürgen

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: 19. Aug. 2011 17:21    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 jdahm 10 Unities + Antwort hilfreich

Servus
Markiere mal "Functions" und klick dann auf "Ausführen".

Gruß
Bernd

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

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

jdahm
Mitglied
Konstrukteur


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

Beiträge: 137
Registriert: 01.08.2008

erstellt am: 19. Aug. 2011 18: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

Danke für den Tip.

Das Makro ist von der Grundidee wirklich gut und hat den Vorteil, eine Verdrehung in CATIA komfortabel zu ändern.
Da kann man dann gleich die Auswirkungen auf die Geometrie überprüfen.

Der Nachteil ist allerdings, daß man die zu kontrollierenden Knoten einzeln anklicken muß.
Wir müssen aber eine komplette Produktstruktur mit teilweise mehr als 10 Unterebenen auf Verdrehungen checken.
Ich hatte die Vorstellung, eine Auflistung der Assemblies mit deren Positionierungsdaten bezüglich des Root-Products zu erzeugen.

Kommt man mit der Auswertung des Position-Objects über GetComponents weiter?
Da werden 12 Positions-Komponenten in einem eindimensionalen Array ausgegeben:
Die letzten 3 beschreiben die Lage des Nullpunktes.
Mir ist nur nicht klar, wie man die jeweils 3 Komponenten für X-, Y- und Z-Achse deuten soll.

------------------
Gruß
Jürgen

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: 19. Aug. 2011 18:46    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 jdahm 10 Unities + Antwort hilfreich

Servus
Dabei handelt es sich um jeweils die 3 Komponenten des Vektor (Einheitsvektor) der Achse.

Gruß
Bernd

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

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

jdahm
Mitglied
Konstrukteur


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

Beiträge: 137
Registriert: 01.08.2008

erstellt am: 22. Aug. 2011 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

Ah ja, im Prinzip das Gleiche wie im VPS der "Info Link".
Danke

------------------
Gruß
Jürgen

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

jdahm
Mitglied
Konstrukteur


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

Beiträge: 137
Registriert: 01.08.2008

CATIA V5 R21 SP3
Windows 10 Pro(64)
HP EliteBook 8760w
i7 CPU @ 2,5GHz
8GB RAM

erstellt am: 22. Aug. 2011 17:11    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 script sieht momentan so aus:
Code:
Sub Position_Test()

    Dim objDocuments As Documents
    Dim objExcel As Object
    Dim oProduct As Product
    Dim oSelection As Selection
    Dim strPartNumber As String                    'Partnumber
    Dim WB As Workbook
    Dim intZeile As Integer
    Dim intI As Integer
    Dim oAxisComponentsArray(11)
   
    Set oProduct = CATIA.ActiveDocument.Product
    Set objDocuments = CATIA.Documents
    Set objExcel = CreateObject("Excel.Application")  'Excel starten
    Set WB = objExcel.Workbooks.Add
    objExcel.Application.Visible = True                'Excel sichtbar schalten
   
    Set objSel = oDoc.Selection
    objSel.Clear                                        'Clear CATIA-Preselection to avoid distortion
    intZeile = 4                              'Position of first data row

'Retrieve data and copy into the list
'====================================
    For intI = 1 To objDocuments.Count                                      'All Parts
        If TypeName(objDocuments.Item(intI)) = "ProductDocument" Then
           
            Cells(intZeile, 1).Value = objDocuments.Item(intI).Product.PartNumber      'Get Product PartNumber
            Cells(intZeile, 2).Value = objDocuments.Item(intI).Product.DescriptionRef  'Get Product Description

            objDocuments.Item(intI).Product.Position.GetComponents oAxisComponentsArray 'Retrieve position components
                ' X axis components
            Cells(intZeile, 3).Value = oAxisComponentsArray(0)
            Cells(intZeile, 4).Value = oAxisComponentsArray(1)
            Cells(intZeile, 5).Value = oAxisComponentsArray(2)
                ' Y axis components
            Cells(intZeile, 6).Value = oAxisComponentsArray(3)
            Cells(intZeile, 7).Value = oAxisComponentsArray(4)
            Cells(intZeile, 8).Value = oAxisComponentsArray(5)
                ' Z axis components
            Cells(intZeile, 9).Value = oAxisComponentsArray(6)
            Cells(intZeile, 10).Value = oAxisComponentsArray(7)
            Cells(intZeile, 11).Value = oAxisComponentsArray(8)
                ' Transformation components
            Cells(intZeile, 12).Value = oAxisComponentsArray(9)
            Cells(intZeile, 13).Value = oAxisComponentsArray(10)
            Cells(intZeile, 14).Value = oAxisComponentsArray(11)

        End If
    Next
End Sub



Leider erhalte ich damit nur die Position des Root-Products.
Wie erreicht man, daß auch alle Unterprodukte gelistet werden?

------------------
Gruß
Jürgen

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: 22. Aug. 2011 17:39    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 jdahm 10 Unities + Antwort hilfreich

Einmal Rekursiv durch's Dokument, mehr ist es nicht mehr.

Also for each Produrct in Root.Products und dann immer wieder die Funktion aufrufen.

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

meisterlumpi
Mitglied



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

Beiträge: 118
Registriert: 15.04.2011

Intel Core2 Quad Q6600 2.40 GHz | 4 GB RAM | Win7x64

erstellt am: 22. Aug. 2011 17:41    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 jdahm 10 Unities + Antwort hilfreich

die intZeile laufvariable müsste in der schleife erhöht werden, sonst überschreibt er immer ein und die selbe zeile in der exceltabelle.

Code:

            ...
            Cells(intZeile, 14).Value = oAxisComponentsArray(11)
           

            intZeile = intZeile + 1

        End If
    Next
End Sub


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