Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Punktkoordinaten in Excel auf ausgewähltes Achsensystem

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:  Punktkoordinaten in Excel auf ausgewähltes Achsensystem (9371 mal gelesen)
hit_ks
Mitglied
Konstrukteur Druckguss


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

Beiträge: 188
Registriert: 02.04.2003

Windows 7
Catia V5 R22 HF24

erstellt am: 16. Aug. 2007 06:02    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


Punkteauslesen.zip

 
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


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

Beiträge: 67
Registriert: 21.12.2006

erstellt am: 16. Aug. 2007 20: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 Nur für hit_ks 10 Unities + Antwort hilfreich

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


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

Beiträge: 188
Registriert: 02.04.2003

Windows 7
Catia V5 R22 HF24

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

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


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

Beiträge: 67
Registriert: 21.12.2006

erstellt am: 17. Aug. 2007 17: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 hit_ks 10 Unities + Antwort hilfreich

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


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

Beiträge: 188
Registriert: 02.04.2003

Windows 7
Catia V5 R22 HF24

erstellt am: 18. Aug. 2007 07:26    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 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


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

Beiträge: 67
Registriert: 21.12.2006

erstellt am: 19. Aug. 2007 03:26    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 hit_ks 10 Unities + Antwort hilfreich

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


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

Beiträge: 67
Registriert: 21.12.2006

erstellt am: 20. Aug. 2007 00:32    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 hit_ks 10 Unities + Antwort hilfreich


PunktKoordinaten.zip

 
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


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

Beiträge: 188
Registriert: 02.04.2003

Windows 7
Catia V5 R22 HF24

erstellt am: 20. Aug. 2007 14:31    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 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


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

Beiträge: 67
Registriert: 21.12.2006

erstellt am: 20. Aug. 2007 19:08    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 hit_ks 10 Unities + Antwort hilfreich

Na dann hat das ja mal wieder genau gepasst.

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

rweber_denc
Mitglied
Projektmanager


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

Beiträge: 19
Registriert: 12.02.2001

erstellt am: 30. Mai. 2008 13: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 Nur für hit_ks 10 Unities + Antwort hilfreich


error.JPG

 
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



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: 31. Mai. 2008 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 Nur für hit_ks 10 Unities + Antwort hilfreich

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



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

Beiträge: 1091
Registriert: 08.02.2002

erstellt am: 02. Jun. 2008 08: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 hit_ks 10 Unities + Antwort hilfreich

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


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

Beiträge: 19
Registriert: 12.02.2001

erstellt am: 04. Jun. 2008 13:01    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 hit_ks 10 Unities + Antwort hilfreich

Hallo Zoltan,

Deine Zeilen haben geholfen. Jetzt funktioniert es auch bei mir.

Vielen herzlichen Dank und 10 unities!

Grüße,
Rainer

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

YellowDevil
Mitglied
PI, Makroentwicklung, NC Automatisierung


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

Beiträge: 67
Registriert: 21.12.2006

erstellt am: 05. Jun. 2008 06:40    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 hit_ks 10 Unities + Antwort hilfreich

Dank dir Zoltan, habe es erst heute gesehen das ein alter Beitrag von mir wieder aktiv ist.

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

BrunoS
Mitglied


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

Beiträge: 2
Registriert: 30.12.2007

erstellt am: 19. Aug. 2008 01:08    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 hit_ks 10 Unities + Antwort hilfreich

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



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: 19. Aug. 2008 19:30    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 hit_ks 10 Unities + Antwort hilfreich

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


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

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 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 hit_ks 10 Unities + Antwort hilfreich

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



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: 04. Dez. 2008 18:02    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 hit_ks 10 Unities + Antwort hilfreich

Hallo,

du hast vor diese Zeilen sicherlich etwas ähnliches:

Code:
dim axisSystem1 as AxisSystem
Ändere das Typ in Objekt/Variant um und es wird funktionieren.

Gruß,
Zoltán

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

Gruenbaumfunker
Mitglied
System-Ingenieur


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

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 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 hit_ks 10 Unities + Antwort hilfreich

Danke für die schnelle Antwort. Das hat geholfen. Manchmal zickt das Programm aber auch wegen unnötiger Kleinigkeiten rum....

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

Stefan_I
Mitglied
Ing HTL


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

Beiträge: 866
Registriert: 04.07.2001

erstellt am: 11. Feb. 2009 10: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 Nur für hit_ks 10 Unities + Antwort hilfreich


punkt_auslesen_prob.jpg


Punkte_auslesen.CATScript.txt

 
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



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: 11. Feb. 2009 19: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 hit_ks 10 Unities + Antwort hilfreich

Hallo,

musst die Art von Punkte messen.
Versuche es hiermit:
http://ww3.cad.de/foren/ubb/Forum137/HTML/000628.shtml#000000

Gruß,
Zoltan

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

Thomas Harmening
Ehrenmitglied V.I.P. h.c.
Arbeiter ツ



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

Beiträge: 2897
Registriert: 06.07.2001

NX 10
Win 7

erstellt am: 11. Feb. 2009 22: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 Nur für hit_ks 10 Unities + Antwort hilfreich

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

IMHOIn my humble oppinion (Meiner Meinung nach) 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


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

Beiträge: 866
Registriert: 04.07.2001

erstellt am: 12. Feb. 2009 08:24    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 hit_ks 10 Unities + Antwort hilfreich

Hallo zusammen,

besten Dank für eure Infos.

------------------
Gruss
Stefan Inderbitzin

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

picard
Mitglied



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

Beiträge: 193
Registriert: 04.06.2001

erstellt am: 23. Jul. 2013 16:25    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 hit_ks 10 Unities + Antwort hilfreich

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

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