| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. |
| |
 | Animation Grundlagen, ein Seminar am 18.03.2025
|
Autor
|
Thema: Punktkoordinaten in Excel auf ausgewähltes Achsensystem (9575 mal gelesen)
|
hit_ks Mitglied Konstrukteur Druckguss
 
 Beiträge: 192 Registriert: 02.04.2003 Windows 7 Catia V5 R22 HF24
|
erstellt am: 16. Aug. 2007 06:02 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen! Ich habe ein tolles Script in diesem Forum gefunden! Mein Problem ist nur, meine benötigten Koordinaten gehen nicht vom Absoluten Achsensystem aus. Kann man dieses Script so umschreiben, dass man ein Achsensystem vorher auswählen kann? ------------------ Gruss Klaus  "Es gibt keine absolute Sicherheit, nur mehr oder weniger Unsicherheit. Damit muss man leben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung

 Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 16. Aug. 2007 20:56 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Ja das kann man. Das funktioniert über eine Matrix, in der die Absoluten Koordinaten des Punktes umgerechnet werden zum gewünschten Achsensystem. Ist eigentlich nur ein wenig Mathematik, da man Achsenausrichtung und Achsenwinkel beider Achsensysteme berücksichtigen muss. Wenn Du ein wenig suchst im Forum findest Du auch die fertige Matrix zum umrechnen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hit_ks Mitglied Konstrukteur Druckguss
 
 Beiträge: 192 Registriert: 02.04.2003 Windows 7 Catia V5 R22 HF24
|
erstellt am: 17. Aug. 2007 17:37 <-- editieren / zitieren --> Unities abgeben:         
Hallo ! Da Ich von Macroprogrammierung keine Ahnung habe, wieß Ich leider nicht wie Ich so etwas einbauen kann! ------------------ Gruss Klaus  "Es gibt keine absolute Sicherheit, nur mehr oder weniger Unsicherheit. Damit muss man leben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung

 Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 17. Aug. 2007 17:49 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Wenn Du von der Macroprogrammierung keine Ahnung hast, dann dürfte dir auch das gefudene Script nichts nützen. Weil ein wenig muss daran noch gemacht werden,damit es läuft. Was willst du denn ganz genau machen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hit_ks Mitglied Konstrukteur Druckguss
 
 Beiträge: 192 Registriert: 02.04.2003 Windows 7 Catia V5 R22 HF24
|
erstellt am: 18. Aug. 2007 07:26 <-- editieren / zitieren --> Unities abgeben:         
Hallo! Ich möche die Koordinaten von Punten eines Körpers über ein vorgegebenes Achsensystem in eine Excel Tabelle auslesen!
------------------ Gruss Klaus  "Es gibt keine absolute Sicherheit, nur mehr oder weniger Unsicherheit. Damit muss man leben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung

 Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 19. Aug. 2007 03:26 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Ich schau mal,dass ich dir das einbaue. Es wird wie bisher sein,dass du vor dem Macrostart die Punkte selektiert haben musst und nach dem Start wirst du ein vorhandenes Achsensystem anklicken müssen, auf welches sich die Koordinaten beziehen sollen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung

 Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 20. Aug. 2007 00:32 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
So habe Dir mal ein neues Makro geschrieben in CATScript. Funtkionen: Es wird der Dateipfad und der Dateiname abgefragt. Standard Einstellung ist hier für den Pfad: C:\tmp\ und für die Datei: PunktKoordinaten.csv. Wenn du immer nur Enter oder OK drückst bleiben die Werte so,du kannst aber auch anderen Namen eingeben. Wichtig ist nur beim Pfad, dass am Ende ein \ steht. Danach erkennt das Makro, ob du schon Punkte ausgewählt hast oder nicht. Solltest Du keine ausgewählt haben, wirst du aufgefordert welche anzuklicken. Du kannst bis zu 100 Punkte anklicken, hab die Arrays auf 100 gesetzt. Sollen es mehr sein, dann müssen die Arrays erhöht werden. Wenn du fertig bist mit der Auswahl drückst du die ESC Taste. Danach wirst Du nach dem Achsen System gefragt auf welches sich die Koordinaten beziehen sollen. Du kannst nur Achsensystem anwählen und das solltest du im Strukturbaum tun, ist am sichersten. Danach fragt das Makro noch, ob du die Kommazeichen gegen Dezimalpunkte ersetzen willst. Alle Koordinaten werden auf 3 Stellen hinter dem Komma gerundet, sollte genau genug sein. So ich hoffe das Script hilft dir und entspricht deinen Wünschen. Falls Du noch Änderungen haben möchtest, musst Du mir bescheid geben. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hit_ks Mitglied Konstrukteur Druckguss
 
 Beiträge: 192 Registriert: 02.04.2003 Windows 7 Catia V5 R22 HF24
|
erstellt am: 20. Aug. 2007 14:31 <-- editieren / zitieren --> Unities abgeben:         
Hallo Yellow Devill! Genau so habe Ich mir das vorgestellt! Bin die sehr dankbar für die Erstellung!
------------------ Gruss Klaus  "Es gibt keine absolute Sicherheit, nur mehr oder weniger Unsicherheit. Damit muss man leben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung

 Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 20. Aug. 2007 19:08 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
rweber_denc Mitglied Projektmanager

 Beiträge: 19 Registriert: 12.02.2001
|
erstellt am: 30. Mai. 2008 13:22 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Hallo YellowDevil, auf der Suche nach einem Makro, was mir Punktkoordinaten bzgl. eines wählbaren Achsensystems ausgibt, bin ich auf Deinen Beitrag gestoßen. Dein Makro bietet wirklich alles, was man sich zu dieser Funktion wünscht. Ich bin Dir sehr dankbar für die Veröffentlichung. Leider bleibt bei mir (R16SP6 auf XP) das Makro immer nach der Frage nach Punkt/Komma hängen und gibt die beigefügte Meldung aus. Hast Du eine Idee, woran das liegen könnte? Besten Dank im voraus, Rainer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
zoltan.bekesi Mitglied
 
 Beiträge: 321 Registriert: 22.10.2006 Job: CATIA V5R19 / XP 32bit MS Office 2003 Microstation V8 2004 Edition DELL Precision M6300
|
erstellt am: 31. Mai. 2008 11:27 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Hallo, auf R16PS2 hat zwar das Skript problemlos funktioniert, folgende änderungen könnten dir aber weiterhelfen:
Code: Dim oPoint 'neue Zeile For iZaehler=1 To oCount set oPoint=oPunkt(iZaehler) 'Neue Zeile 'oPunkt(iZaehler).GetCoordinates aCoord1 'Alte Zeile oPoint.GetCoordinates aCoord1 'geänderte Zeile xa=aCoord2(0) ya=aCoord2(1) za=aCoord2(2) x=aCoord1(0) y=aCoord1(1) z=aCoord1(2) xp=Vx_A(0)*(x-xa)+Vx_A(1)*(y-ya)+Vx_A(2)*(z-za) yp=Vy_A(0)*(x-xa)+Vy_A(1)*(y-ya)+Vy_A(2)*(z-za) zp=Vz_A(0)*(x-xa)+Vz_A(1)*(y-ya)+Vz_A(2)*(z-za) xp=Round(xp,3) yp=Round(yp,3) zp=Round(zp,3) If oBox=6 Then xp=Replace(xp,",",".") yp=Replace(yp,",",".") 'Neue Zeile, hat aber keine direkte Auswirkungen zp=Replace(zp,",",".") 'Neue Zeile, hat aber keine direkte Auswirkungen End If
Gruß, Zoltan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jkaestle Mitglied
   
 Beiträge: 1091 Registriert: 08.02.2002
|
erstellt am: 02. Jun. 2008 08:41 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Zitat: Original erstellt von rweber_denc: Hast Du eine Idee, woran das liegen könnte?
Hallo Rainer, es könnte ein Lizenzproblem sein. Laut Doku muss für die Methode GetCoordinates eine GSD-Lizenz vorhanden sein. ------------------ Viele Grüße Jochen Kästle Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rweber_denc Mitglied Projektmanager

 Beiträge: 19 Registriert: 12.02.2001
|
erstellt am: 04. Jun. 2008 13:01 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung

 Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 05. Jun. 2008 06:40 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
BrunoS Mitglied
 Beiträge: 2 Registriert: 30.12.2007
|
erstellt am: 19. Aug. 2008 01:08 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Hallo zusammen Die oben gezeigte Matrix ist echt klasse und ich habe sie auch schon mehrfach verwendet. Ein grosses Problem hat sich ergeben als ich versucht habe die Matrix umzudrehen. Die konkrete Aufgabe ist es NC-Daten in Catia einzulesen. Die NC-Daten wurden von einem Fremdsystem unter benutzung eines lokalen Koordinatensystemes erstell. Wenn ich diese einlese kommen die Punkte natürlich global in Catia an. Ich möchte vor dem einlesen ein Koodinatensystem wählen und die Koordinaten sollen dann automatisch über eine Matrix vom globalen auf das gewählte Koordinatensysten umgerechnet werden. MsgBox("Bitte das Achsensystem anklicken, auf welches sich die Koordinaten beziehen sollen!") oMySel.Clear sFilter(0)="AxisSystem" sSelection=oMySel.SelectElement2(sFilter,"Bitte das Achsensystem anklicken,auf welches sich die Koordinaten bezihen sollen",True) If sSelection="Normal" Then Set oAxisSystem=oMySel.Item2(1).Value End If oAxisSystem.GetOrigin aCoord2 ' Ursprung des lokalen Koordinatensystemes oAxisSystem.GetXAxis Vx_A ' Ausrichtung des Lokalen Koordinatensystemes oAxisSystem.GetYAxis Vy_A oAxisSystem.GetZAXis Vz_A xa=aCoord2(0) ya=aCoord2(1) za=aCoord2(2) ' x=aCoord1(0) '' x y z sind die aus einer Datei eingelesenen ' y=aCoord1(1) '' NC-Positionen. ' z=aCoord1(2) 'xp=Vx_A(0)*(x-xa)+Vx_A(1)*(y-ya)+Vx_A(2)*(z-za) 'yp=Vy_A(0)*(x-xa)+Vy_A(1)*(y-ya)+Vy_A(2)*(z-za) 'zp=Vz_A(0)*(x-xa)+Vz_A(1)*(y-ya)+Vz_A(2)*(z-za) 'die letzten 3 Zeilen sind die Umrechnungs-Matrix von global auf lokal ' ich brauche das ganze aber umgedreht von lokal auf global Hat jemand eine Idee wie die Matrix aussehen muss?? Ich dachte das müsste ganz einfach sein, aber ich bekomme es leider nicht hin. Bin für jede Hilfe dankbar Gruß BrunoS Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
zoltan.bekesi Mitglied
 
 Beiträge: 321 Registriert: 22.10.2006 Job: CATIA V5R19 / XP 32bit MS Office 2003 Microstation V8 2004 Edition DELL Precision M6300
|
erstellt am: 19. Aug. 2008 19:30 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Hallo, der Stichwort heißt hier: Inverse. Suche mal in der CATIA VB Hilfe nach MatrixInverse, da findest du die richtige Funktion. Es funktioniert aber nur innerhalb einer Part. Falls du dir die Umrechnerei sparen möchtest, würde sich hier aber auch die Methode AddNewPointCoordWithReference bieten. Als Referenz dann ein Referenz des Koordinatensystemes verwenden. Aber auch nur innerhalb einer Part. Gruß, Zoltán Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gruenbaumfunker Mitglied System-Ingenieur

 Beiträge: 88 Registriert: 16.11.2007 Intel Xenon 2 x 2,53Mhz 12 GB Ram NVIDIA Quadro Fx 1800 Vista 64bit CATIA v5R18 + v5R19
|
erstellt am: 04. Dez. 2008 17:29 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Hallo, ich bin eben dabei dieses Skript in ein VBA Makro einzubauen. Allerdings bekomme ich beim auslesen des Achsensystems folgende Fehlermeldung: Function marked as restricted or uses a type not supported in Visual Basic Es scheint so als würden die folgenden Befehle nicht unterstützt werden: axisSystem1.GetOrigin aCoord2 axisSystem1.GetXAxis Vx_A axisSystem1.GetYAxis Vy_A axisSystem1.GetZAxis Vz_A Hab in der Doku nachgeschaut, aber dort sind sie genau so drin. Was mache ich falsch? Gruß Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
zoltan.bekesi Mitglied
 
 Beiträge: 321 Registriert: 22.10.2006 Job: CATIA V5R19 / XP 32bit MS Office 2003 Microstation V8 2004 Edition DELL Precision M6300
|
erstellt am: 04. Dez. 2008 18:02 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
Gruenbaumfunker Mitglied System-Ingenieur

 Beiträge: 88 Registriert: 16.11.2007 Intel Xenon 2 x 2,53Mhz 12 GB Ram NVIDIA Quadro Fx 1800 Vista 64bit CATIA v5R18 + v5R19
|
erstellt am: 04. Dez. 2008 18:40 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
Stefan_I Mitglied Ing HTL
  
 Beiträge: 867 Registriert: 04.07.2001
|
erstellt am: 11. Feb. 2009 10:55 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Hallo zusammen, weiss jemand von euch wie genau die Funktion GetCoordinates tickt ? Ich habe versucht Schnittpunkte mit dem Programm auszulesen, was nicht funktionierte. Wenn ich die Verschneidung explodiere geht's auch nicht. Wenn ich diese Punkte aber in eine Skizze projziere, geht's. Einzelne importierte Punkte gehen auch. Weiss jemand rat ? ------------------ Gruss Stefan Inderbitzin [Diese Nachricht wurde von Stefan_I am 11. Feb. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
zoltan.bekesi Mitglied
 
 Beiträge: 321 Registriert: 22.10.2006 Job: CATIA V5R19 / XP 32bit MS Office 2003 Microstation V8 2004 Edition DELL Precision M6300
|
erstellt am: 11. Feb. 2009 19:46 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
Thomas Harmening Ehrenmitglied V.I.P. h.c. Arbeiter ツ

 Beiträge: 2897 Registriert: 06.07.2001 NX 10 Win 7
|
erstellt am: 11. Feb. 2009 22:27 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Zitat: Original erstellt von Stefan_I: Hallo zusammen, weiss jemand von euch wie genau die Funktion GetCoordinates tickt ? Ich habe versucht Schnittpunkte mit dem Programm auszulesen, was nicht funktionierte. Wenn ich die Verschneidung explodiere geht's auch nicht. Wenn ich diese Punkte aber in eine Skizze projziere, geht's. Einzelne importierte Punkte gehen auch. Weiss jemand rat ?
GetCoordinates will Punkte haben, die X,Y,Z Koordinaten aufweisen. Eine Verschneidung ist hier noch kein Punkt , auch wenn die Verschneidung nur 1-Dimenson hat fehlt dem Punkt doch der Bezug zu X,Y,Z, genauso wie ein Punkt auf einer Linie mit einem Ratio... IMHO Das Element isoliert in ein neues Geoset verfrachten, und ein Disassembley anwenden -in Einzelelemente. Das sollte Punkte erzeugen, wenn auch isoliert aber nun mit X,Y und Z - Werten beim export
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stefan_I Mitglied Ing HTL
  
 Beiträge: 867 Registriert: 04.07.2001
|
erstellt am: 12. Feb. 2009 08:24 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
|
picard Mitglied
 
 Beiträge: 193 Registriert: 04.06.2001
|
erstellt am: 23. Jul. 2013 16:25 <-- editieren / zitieren --> Unities abgeben:          Nur für hit_ks
Je nachdem, wie das Achsensystem definiert ist, kann es evtl. zu fehlerhaften Ergebnissen führen. Ich habe das Ganze mal in eine Funktion verpackt: Code:
Function GetRelativeCoordinates(oAxs, oPt) Dim aVector(2) Dim aOrigin(2) Dim aCoord(2) Dim aTmp(2) 'get the point data oPt.GetCoordinates aCoord 'get axis data and store to array oAxs.GetOrigin aOrigin oAxs.GetXAxis aTmp aVector(0) = aTmp oAxs.GetYAxis aTmp aVector(1) = aTmp oAxs.GetZAxis aTmp aVector(2) = aTmp 'normalize the axis data For i = 0 To 2 dTmp = Sqr(aVector(i)(0) ^ 2 + aVector(i)(1) ^ 2 + aVector(i)(2) ^ 2) For j = 0 To 2 aVector(i)(j) = Round(aVector(i)(j) / dTmp, 10) Next Next 'calculate position For i = 0 To 2 aTmp(i) = aVector(i)(0) * (aCoord(0) - aOrigin(0)) + aVector(i)(1) * (aCoord(1) - aOrigin(1)) + aVector(i)(2) * (aCoord(2) - aOrigin(2)) Next GetRelativeCoordinates = Array(0, aTmp) End Function
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |