Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Verschiebung ermitteln zwischen zwei Produkten

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:  Verschiebung ermitteln zwischen zwei Produkten (1548 mal gelesen)
V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

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

Hallo,

ich habe die Aufgabe bekommen, mit Hilfe eines Makros die Verschiebung zwischen 2 beliebigen Produkten zu ermitteln. ich bin makro programmier anfänger und meine vorgehensweise habe ich mir im programm so vorgestellt:

erstellung eines parts im ersten product
erstellung eines parts im zweiten produkt
auslesen der x,y,z verschiebung sowie -verdrehung zwischen beiden produkten
ausgabe der komponenten
löschen beider parts

ich wollte fragen, ob diese vorgehensweise i.o ist bzw. ob jemand ncoh einen anderen und simpleren weg vorschlagen kann. zudem benötige ich ein paar tipps, wie ich die verschiebungen zwischen den beiden neu erstellten parts ermitteln kann (da bin ich mom noch etwas planlos), z.b. schwebt mir vor ein zugriff über die koordinatensysteme; jedoch erahne ich, das mir so nur zweimal 0,0,0 ausgegeben wird, da die koordinaten der beiden koordinatensysteme stets auf 0 liegen werden.

für hilfe und ideen bin ich sehr dankbar.

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

V5Playaz
Mitglied
Dipl.-Ing (BA)


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

Beiträge: 447
Registriert: 12.07.2005

DELL PRECISION 390
3,25 GB RAM
WIN XP PRO SP2
CATIA V5 R16-19
Delmia V5 R19
VB6, VB2008
Adobe Acrobat 9 Pro Extended

erstellt am: 15. Jan. 2010 12: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 V5-Macro-Noob 10 Unities + Antwort hilfreich

Hallo und Willkommen im Forum,


du kannst die Suchfunktion nutzen, dann wirst du schon einige Hinweise auf dein Problemfall finden.

Um eine Verschiebung zu ermitteln ist es natürlich notwendig dass beide Parts/Products in einem Product vorhanden sind.

Du solltest außerdem in Koordinatentransformation fit sein, wegen der Verdrehung.

Hast du mal ein Beispiel?

Grüße Dominik

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

V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

erstellt am: 18. Jan. 2010 15: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


Koord-Trans.txt

 
Danke und ein hallo zurück,

zuerst die Antworten auf die gestellten Frage:

ja, die Parts bzw. Produkte sind in einem Product zusammengebaut.

in Koordinatentransformation bin ich wohl leider nicht so fit; siehe angehängte Datei. Um jeweils eine Achse zu drehen habe ich keine Probs, auch eine Drehung um 2 Achsen funktioniert, aber nur bei kleinen Winkel; schon ab einem Winkel von 20° stehen meine Achsen nicht mehr 100% senkrecht zueinander. Ich weiß momentan auch nicht, wo mein Fehler liegt, viell. hat jemand einen Tipp für mich?

und mein bsp ist ganz einfach, nimm 2 produkte mit je 1 part, bau sie in einem weiteren produkt zusammen und verschiebe je 1 produkt mit part, und schon interessiert mich, wie ich an diese verschiebung heran komme. ein schlüsselwort würde mir ausreichen.

nochmals danke

LG Jörg

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

V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

erstellt am: 19. Jan. 2010 14:28    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 wollte nachfragen, ob jemand Zeit gefunden hat, um meinen Denkfehler in der Koor. Transf. zu finden.

Danke.

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

V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

erstellt am: 22. Jan. 2010 13:17    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 die Hilfe, das auslesen der Ursprungskoordinaten hat beim ersten Mal ohne Probleme geklappt; war einfacher als gedacht.

Ein Problem bleibt momentan noch; meine Koordinatentransformation hat noch immer nicht hin. Ich habe auch schon im Forum gesucht aber nichts sinnvolles gefunden. Kann mir noch jemand einen Tipp geben, wo ich eine 3-dim. Koordinatentransformation (eventuell auch mit Programmcode) finden und verstehen kann. Das ist das letzte Puzzle in meinem Makro, doweit funktioniert alles richtig gut.

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. 2010 15: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 V5-Macro-Noob 10 Unities + Antwort hilfreich

Servus
Schau mal in einem guten Mathebuch (oder iNet) zum Thema "Kooridnatentransfomation" bzw Transfomationsmatrix.

Gruß
Bernd

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

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

V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

erstellt am: 26. Jan. 2010 17:59    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 hilfreichen Tip,

ich habe schon einige Bücher und Internetseiten durchsucht und gefunden, dass man eine beliebige rotation im 3d als jeweils eine rotation um eine achse erzeugen kann. (unter beachtung, dass die reihenfolge der rotation einfluss auf das endergebnis hat.

dies habe ich im wuellcode umgesetzte (siehe angehängte datei ein paar abschnitte weiter oben), funktioniert auch für die rotatiom um je eine achse 1a. möchte ich nun aber um 2 achsen hintereinander rotieren, dann gibt es probs.

habe verschiedene überlegungen angestellt, welche mein problem aber nicht gelöst haben, konnte aber bisher alles ausschließen.
z.b. pi zu ungenau angegeben, double genauigkeit nicht genügend, vorzeichenfehler (hab einen gefunden und schon geändert)

dennoch hat nichts geholfen, habe immernoch einen fehler, wahrscheinlich einen denkfehler, den ich momentan nicht erkenne.

deswegen meine frage nach hilfe und prüfung meines quellcodes, wo mein fehler liegen könnte. um hilfe wäre ich sehr dankbar.

gruß jörg

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

V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

erstellt am: 27. Jan. 2010 14: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

Hallo zusammmen,

da es wohl hier im Forum niemanden gibt, der mir bei meinem Problem helfen kann, wollte ich eine andere Vorgehnsweise in den raum werfen, mit dem ich meinen Fehler viell. umgehen kann.

Bisher ist es so, dass ich abstände und winkeldifferenzen ermittle und diese mit dem befehl MOVE nutzen wollten. Da ich sowieso die Endposition meiner Produkte einlese, kann ich bestimmt diese umrechnen und dem Koordinaten des Produktes zuweisen, in der art von GETKOORD.

Könntet ihr eure Meinung darüber bitte posten, ob das geht und auch i.o. wäre.

vielen dank
gruß Jörg

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

tomtom1972
Mitglied
dipl ing maschinenbau


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

Beiträge: 605
Registriert: 22.03.2005

NVidia Quadro K4000
Intel Xeon E5-1620, 64GB RAM
Windows10 64bit
R30 <= CATIA V5 > =R19

erstellt am: 29. Jan. 2010 08: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 Nur für V5-Macro-Noob 10 Unities + Antwort hilfreich

Hallo,

ich würde anders vorgehen.
Mittels    .Position.GetComponents  kannst du die die Transformation eines Parts/Products bezogen auf den Ursprung des Products in welchem es verbaut ist, als 11-stelliges array ausgeben lassen.
Rekursiv ausgeführt (bis hoch zum Root) erhälst du (unabhängig von der Verschachtelunstiefe) die absolute Transformation eines Parts/Products bezogen auf den Ursprung des Roots.
Einfach für beide Parts/Products ausführen und die eine Matrix von der anderen subtrahieren und du erhälst die Verschiebung der beiden zueinander (bezogen auf die Hauptrichtungen des absoluten Achsensystems des Roots) unabhängig davon, ob sich die beiden im selben Product befinden (also in der gleichen Verschachtelungstiefe).

Das ist im Prinzip nur Vektorrechnung.
Und der o.b. Ablauf funktioniert einwandfrei.
Falls dir was unklar ist, melde dich nochmal.

Gruß TomTom

------------------
tomtom1972

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

Lusilnie
Mitglied



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

Beiträge: 1486
Registriert: 13.07.2005

erstellt am: 01. Feb. 2010 22:49    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 V5-Macro-Noob 10 Unities + Antwort hilfreich

Hallo V5-Macro-Noob,

ich bin leider derzeit nur sporadisch im Forum , daher erst jetzt die Antwort zu Deinem Matrizen-Problem:

Ergänzend zu den Ausführungen von "tomtom1972" noch der Link auf meine Standard-Antwort auf Dein Matrizen-Problem: http://ww3.cad.de/foren/ubb/Forum137/HTML/003719.shtml#000004.
Wenn Du geschickt gesucht hättest, wärst Du sicher auf den einen oder anderen Beitrag dazu gestoßen...

Falls das noch nicht Dein Problem löst, einfach wieder (präzis) nachfragen...

Vielleicht sollte ich hier noch erwähnen, das CATIA mit Vektoren rechnet und nicht mit Rotationen um Achsen. Dies ist der Fall im DELMIA, was immer eine Umrechnung bedeutet, wenn man die Angaben aus dem einem System im andern System verwenden will.


mfg,
Lusilnie

------------------
Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!

frei nach größeren Geistern

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

V5-Macro-Noob
Mitglied



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

Beiträge: 15
Registriert: 14.01.2010

erstellt am: 02. Feb. 2010 19:55    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 eure Antworten,

ich bin in meinem Programm jetzt auch übergegangen, direkt mit Vektoren zu rechnen und meine Produkte mit SetComponents zu positionieren. Vereinfacht einies im Quellcode, ist aber weniger Anschaulich als die Rotation um Achsen. Aber da werden meine Kollegen mit leben müssen. Habe auch schon ein kleines Programm erstellt, mit denen meine Kollegen Koordinaten von Produkten und Parts ermitteln können.

Nun muss getestet und Bugs ausfindig gemacht werden.
Nochmals Danke allen für alle Beiträge
Gruß Jörg

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