Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Befehl Bauteil ausrichten

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:  Befehl Bauteil ausrichten (4361 mal gelesen)

Ex-Mitglied

erstellt am: 24. Aug. 2010 11:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hallo,

wie kann ich ein Bauteil mit Hilfe von gegebenen x,y, und z Ausrichtung sowie der Drehung um die drei Achsen ausrichten? (Daten liegen in Form einer Excel Tabelle vor. Das Einspielen der Daten funktioniert soweit).

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. Aug. 2010 11:20    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

Servus
Siehe Doku: Product -> Position -> SetComponents

Gruß
Bernd

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

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


Ex-Mitglied

erstellt am: 24. Aug. 2010 11:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Mein Problem ist, dass ich das Bauteil nicht direkt ansprechen kann...
Wie kann ich das Bauteil drehen?

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. Aug. 2010 12:47    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

Servus
Warum kannst du das Teil nicht ansprechen? (zb oProduct.products.item(1))
Die Drehung und die Ausrichtung sollte alles in einem Array definiert werden könnten.

Gruß
Bernd

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

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


Ex-Mitglied

erstellt am: 24. Aug. 2010 14:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hallo Bernd,

ich möchte das Bauteil um die Achsen drehen.
Beispiel für eine Achse:


Set angle3 = parameters6.Item() 
--> was muss hier in die Klammer, wenn ich um die X-Achse drehen möchte?
angle3.value = CDbl(WS.Cells(nRow, 7).Value) '--> Wert aus meiner eingelesenen Tabelle

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. Aug. 2010 14: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

Servus
Hast das mit deinem andern Problem zu tun?
Also Postion aus txt-File auslesen und Componente so im Product zu platzieren?
Dann könntest du ja (Umrechnung Euler'sche Winkel) die Richtungsvektoren für die Funktion "SetComponents" verwenden.
Oder was hast du vor? Welche Achse meinst du, des Parts, des Product, bestimmtes Achsensystem, ...??

Gruß
Bernd

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

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


Ex-Mitglied

erstellt am: 24. Aug. 2010 14:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hallo Bernd,

ja genau, ich habe ein Problem mit dem einlesen der Werte aus der txt Datei.
Diese ist folgendermaßen aufgebaut und enthält die Informationen zu den Bauteilen wie folgt:

Komponentenbezeichnung xKoordinate yKoordinate zKoordinate xDrehung yDrehung zDrehung

Die CAD Componente soll zunächst im Raum (Position x,Y und Z) und anschlßeßend entsprechend der Werte um die x,Y und z Achse gedreht werden.

Ich habe jedoch keine Idee wie das funktionieren könnte. Gibt es hierzu evtl. ein schon lauffähiges Skript?

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. Aug. 2010 19: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

Servus
Das mit der Postion sollte kein Problem sein. Was ist mit den Winkeln? Welche Drehungen sind es (siehe Wikipedia Eulersche Winkel)? Oder Drehungen um das Achsensystem der Baugruppe?

Gruß
Bernd

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

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


Ex-Mitglied

erstellt am: 25. Aug. 2010 07:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hallo,

ich möchte um das Koordinatensystem der Komponente bzw. des Bauteils drehen...

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: 25. Aug. 2010 07:54    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

Servus
Also mit "SetComponents" kannst du die Komponente positionieren. Dazu musst du die Rotationsmatrix berechnen (siehe Wikipedia Rotationsmatrix bzw Eulersche Winkel).
Auszug aus der Doku:
Zitat:
Sets the components of an object's position. This sets the 3D-axis system associated with the object.
Parameters:
iAxisComponentsArray
The array initialized with the components to set to the object's position. The first nine represent succcessively the components of the x-axis, y-axis, and z-axis. The last three represent the coordinates of the origin point.
Example:
This example sets the 3D-axis system components stored in iAxisComponentsArray to the Position object associated with MyObject:
Dim iAxisComponentsArray( 11 )
' x axis components
iAxisComponentsArray( 0 )  = 1.000
iAxisComponentsArray( 1 )  = 0
iAxisComponentsArray( 2 )  = 0.707
' y axis components
iAxisComponentsArray( 3 )  = 0
iAxisComponentsArray( 4 )  = 0
iAxisComponentsArray( 5 )  = 0.707
' z axis components
iAxisComponentsArray( 6 )  = 0
iAxisComponentsArray( 7 )  = -0.707
iAxisComponentsArray( 8 )  = 0.707
' origin point coordinates
iAxisComponentsArray( 9 )  = 1.000
iAxisComponentsArray( 10 ) = 2.000
iAxisComponentsArray( 11 ) = 3.000
MyObject.Position.SetComponents iAxisComponentsArray

Gruß
Bernd

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

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

Peter873
Mitglied



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

Beiträge: 35
Registriert: 26.08.2010

erstellt am: 30. Aug. 2010 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

Hallo Bernd,

kann ich die Komponente auch direkt ausrichten, wenn ich die Raumkoordinaten (x,y,z) und die drei Euler Winkel habe? (Oder funktioniert das nur mit dem von dir gezeigten Beispiel bei dem ich die Rotationsmatrix berechnen muss?

Vielen Dank

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: 30. Aug. 2010 17:35    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

Servus
Eine weiter Möglichkeit wäre drei mal (oder vier mal?)nacheinander eine "move"-Operation auszuführen (siehe Doku).
Also Drehung-X, Drehung, Y und Drehung Z + Verschiebung.
Ob dass direkt mit deinen gegeben Winkel geht oder nicht (sind es Eulersche Winkel? in welcher Reihenfolge? oder sind es Drehungen um (raumstabil) das Baugruppensystem?) musst du herausfinden. Du kannst die Daten interpretieren, wir nicht.

Gruß
Bernd

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

[Diese Nachricht wurde von bgrittmann am 30. Aug. 2010 editiert.]

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

Peter873
Mitglied



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

Beiträge: 35
Registriert: 26.08.2010

erstellt am: 30. Aug. 2010 17:57    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 Bernd,

danke für deinen Hinweis. Ich habe in der zwischenzeit ein Makro erstellt, dass mir fertig ausgerichtete Koordinatensysteme erzeugt. Der Gedanke ist, dass Bauteil nach diesen Koordinatensystemen auszurichten.

Meine Frage:
1. Kann ich ein Bauteil nach dem Koordinatensystem ausrichten?
2. ist das evtl. auch über move oder setcomponents möglich oder kann ich hierbei "nur" das Bauteil direkt ausrichten?

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: 30. Aug. 2010 18: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

Servus
Also von Hand würde ich es mit einer Bedingung machen. Dazu müsste aber in allen Bauteilen ein Achsensystem vorhanden sein (und richtig im Ursprung positioniert sein).

Gruß
Bernd

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

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

Peter873
Mitglied



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

Beiträge: 35
Registriert: 26.08.2010

erstellt am: 30. Aug. 2010 18:12    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 Bernd,

ja die Voraussetzungen sind vorhanden.

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

zoltan.bekesi
Mitglied



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

Beiträge: 321
Registriert: 22.10.2006

Job:
CATIA V5R19 / XP 32bit
MS Office 2003
Microstation V8 2004 Edition
DELL Precision M6300

erstellt am: 30. Aug. 2010 18: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

Hallo,

.Move oder .SetComponents ist wie Snap in CATIA interaktiv. Du kannst bei beiden den Matrix angeben, was du bei den Achsensystemen angegeben hast.
Alternativ kannst du auch einen Koinzidenz zwischen den erzeugten Achsensystem und den AbsoluteAxis der anderen erstellen. Hierbei hilft dir der Makrorekorder, aber du musst den ersten Achsensystem unbedingt im Baum auswählen.

Gruß,
Zoltan

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

Peter873
Mitglied



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

Beiträge: 35
Registriert: 26.08.2010

erstellt am: 31. Aug. 2010 09:54    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 Zoltan,

die Koinzidenzbedingung funktioniert!
Alternativ möchte ich jedoch noch die SetComponents Methode ausprobieren.

Wenn ich das Array wie folgt belege, "sitzt" meine Komponente dann im Raum (1/2/3) ausgerichtet nach meinem absoluten Achsensystem?
(also ohne Drehung)

' x axis components
AxisComponentsArray(0) = 1
AxisComponentsArray(1) = 0
AxisComponentsArray(2) = 0
' y axis components
AxisComponentsArray(3) = 0
AxisComponentsArray(4) = 1
AxisComponentsArray(5) = 0
' z axis components
AxisComponentsArray(6) = 0
AxisComponentsArray(7) = 0
AxisComponentsArray(8) = 1
' origin point coordinates
AxisComponentsArray(9) = 1  --> x Raumposition
AxisComponentsArray(10) = 2  --> y Raumposition
AxisComponentsArray(11) = 3  --> z Raumposition

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: 31. Aug. 2010 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

Servus
IMHOIn my humble oppinion (Meiner Meinung nach) ja. Probiere es doch einfach aus (vielleicht muss du die Position auch in Metern angeben?)

Gruß
Bernd

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

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

Peter873
Mitglied



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

Beiträge: 35
Registriert: 26.08.2010

erstellt am: 31. Aug. 2010 10: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

Hallo Bernd,

ok die Angaben und die Ausrichtung passt soweit, wie gedacht.
Was ist, wenn ich meine Komponente nun drehen möchte?
(an den ersten neun Koordinaten darf ich nichts ändern, sonst "verzieht" es ja mein Bauteil).
Kann ich das Array irgendwie erweitern, welches nach den drei Raumkoordinaten die Drehungen um die drei Achsen ermöglicht?

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: 31. Aug. 2010 11:27    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

Servus
Dann must du die ersten neun Komponenten des Arrays so berechnen, das dabei drei senkrecht aufeinander stehende Einheitsvektoren (die Achsen des Teils) rauskommen. (siehe Rotationsmatrix, Eulersche Winkel, ...)

Gruß
Bernd

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

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