Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Rechtseitiges-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:  Rechtseitiges-Achsensystem (787 mal gelesen)
Scipio
Mitglied
Student

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

Beiträge: 6
Registriert: 06.05.2010

erstellt am: 21. Jun. 2010 18: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

guten abend cad gemeinde 

hätt da mal kurz eine frage weiß zufällig jemand wie man ein Achensystem mit einem Makro daraufhin kontrolieren kann ob es rechtseitig oder linkseitig ist? Mit der  Makro Aufzeichnung Funktion habe ich leider nix brauchabres gefunden.
Wär klasse wenn jemand einen Befehl weis der mich irgendiwe darauf zugreifen läßt.

schönen feierabend
Julian

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

MICHLICK
Mitglied
CAD Methodik Entwickler (CATIA; NX)


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

Beiträge: 454
Registriert: 20.06.2001

Der Aufwand bei Änderungen ist groß, wenn die Finger schneller klicken als das Gehirn denkt.

erstellt am: 22. Jun. 2010 08: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 Nur für Scipio 10 Unities + Antwort hilfreich

Das kann man mit ein wenig Mathematik errechnen.
Dazu einfach die Richtungen der Achsen ermitteln und in der Mathe Formelsammlung stöbern.

Siehe auch hier:
Kreuzprodukt

------------------
Gruß Michael B.

[Diese Nachricht wurde von MICHLICK am 22. Jun. 2010 editiert.]

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: 23. Jun. 2010 00:07    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 Scipio 10 Unities + Antwort hilfreich


Get_Axis_Type.CATScript.txt

 
Hallo Scipio,

wie "MICHLICK" schon angedeutet hat, ist das 'nur' Mathematik.

Ich habe das hier mal mit der "Determinante" versucht, wo der Wert "1" bzw. "-1" ergeben muss und man daraus auf ein rechts- oder linksseitiges Achsensystem schließen kann.

Code:
Option Explicit

Sub CATMain()
   
    Dim iDoc As Document
    Dim iSel 'As Selection
    Dim iFilter()
    Dim iAxis 'As AxisSystem
    Dim iString As String
    Dim iAxisX()
    Dim iAxisY()
    Dim iAxisZ()
    Dim iDbl As Double
    Dim iInt As Integer
   
    Set iDoc = CATIA.ActiveDocument
    Set iSel = iDoc.Selection
   
    ReDim iFilter(0)
    iFilter(0) = "AxisSystem"
   
    iString = iSel.SelectElement2(iFilter, "Select Axis System", False)
   
    If iString = "" Then
        Exit Sub
    End If
   
    Set iAxis = iSel.Item2(1).Value
   
    ReDim iAxisX(2)
    ReDim iAxisY(2)
    ReDim iAxisZ(2)
   
    iAxis.GetXAxis iAxisX
    iAxis.GetYAxis iAxisY
    iAxis.GetZAxis iAxisZ
   
    iDbl = ((iAxisX(0) * iAxisY(1) * iAxisZ(2)) _
            + (iAxisX(1) * iAxisY(2) * iAxisZ(0)) _
            + (iAxisX(2) * iAxisY(0) * iAxisZ(1)) _
            - (iAxisX(2) * iAxisY(1) * iAxisZ(0)) _
            - (iAxisX(1) * iAxisY(0) * iAxisZ(2)) _
            - (iAxisX(0) * iAxisY(2) * iAxisZ(1)))
   
    iInt = Round(iDbl, 0)
   
    If iInt = 1 Then
        MsgBox "Achsensystem '" & iAxis.Name & "' ist rechtsgerichtet."
    ElseIf iInt = -1 Then
        MsgBox "Achsensystem '" & iAxis.Name & "' ist linksgerichtet."
    Else
        MsgBox "Achsensystem '" & iAxis.Name & "': Ausrichtung nicht ermittelbar."
    End If
   
    iSel.Clear
   
End Sub



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

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