Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Abstände zweier Punkte in einem Part (in x-, y-, z-Richtung)

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:  Abstände zweier Punkte in einem Part (in x-, y-, z-Richtung) (836 mal gelesen)
M.Ungericht
Mitglied
Student

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

Beiträge: 9
Registriert: 14.05.2018

MS Windows 7 Professional
Catia V5 6R2017

erstellt am: 14. Mai. 2018 10:45    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,


für eine Projektarbeit muss zwischen zwei unabhängig zueinander liegenden Punkten der Abstand bestimmt werden. Jedoch nicht der direkte Abstand, sondern die Abstände in x-, y- und z-Richtung. Über meinen bisherigen Code wird leider nur der direkte Abstand der beiden Punkte ermittelt. Gibt es eine Möglichkeit die Abstände zu bestimmen? Leider habe ich im Forum bis jetzt nichts dazu gefunden.
Ich programmiere in Catvba. Entschuldigt wenn ich etwas vergessen habe, bin neu in Catia und der Makroprogrammierung.

Mein bisheriger Code:

Private Sub cmdDatenLesen_Click()

    Dim oDocument As Document
    Set oDocument = CATIA.ActiveDocument
   
   
    ReDim InputObjectType(0)
    InputObjectType(0) = "AxisSystem"
    Dim oSel As Selection
    Set oSel = oDocument.Selection
   
    oSel.Clear                                                          'Alle Selektionen entfernen
    oSel.Search ("Name = Roboter Koordinaten Konfiguration; all")      'Roboter Koordinaten Konfiguration Selektieren
    oSel.Search ("'Part Design'.Achsensystem.Name = *_*; sel")          'Die darin enthaltenen Achsensysteme Selektieren
   
   
   
    Dim strFilePath As String
    strFilePath = CATIA.FileSelectionBox("Save axis systems", "*.xml", CatFileSelectionModeSave)
    If strFilePath <> "" Then
        If InStr(strFilePath, ".") = 0 Then
            strFilePath = strFilePath + ".xml"
        End If
        If CATIA.FileSystem.FileExists(strFilePath) Then
            CATIA.FileSystem.DeleteFile (strFilePath)
        End If
        Dim FileObj As File
        Set FileObj = CATIA.FileSystem.CreateFile(strFilePath, True)
        Dim TextStr As TextStream
        Set TextStr = FileObj.OpenAsTextStream("ForWriting")
        TextStr.Write (ursprungsname + Chr(10))
        TextStr.Write (TypeName(oDocument) + Chr(10))
       
        Dim oSelElem As selectedElement
        Dim i As Integer
        Dim oAxissystem As AxisSystem
        Dim strName As String
        Dim objAxis As Object
       
       
        Dim TheSpaWorkbench As SPAWorkbench
        Dim TheMeasurable 'As Measurable
        Dim referenceObject As reference
        Dim referenceObject1 As reference
       
       

       
        For i = 1 To oSel.count
       

           
           
            Set oSelElem = oSel.Item(i)
            Set oAxissystem = oSelElem.Value
            strName = oAxissystem.Name
            Set objAxis = oAxissystem


            Dim pDoc As PartDocument
            Set pDoc = oDocument
            Dim pPart As Part
            Set pPart = pDoc.Part
       
       
            '--messung--
           
            Set selectedElement = oSel.Item(i)
            Set referenceObject1 = objAxis.OriginPoint
            Set referenceObject = pPart.FindObjectByName("RP_Roboter_Absolut")
            Set TheSpaWorkbench = oDocument.GetWorkbench("SPAWorkbench")
            Set TheMeasurable = TheSpaWorkbench.GetMeasurable(referenceObject)
           
            MinDist = TheMeasurable.GetMinimumDistance(referenceObject1)
            TextStr.Write (strName & MinDist & Chr(10))

           
       
            '--ende messung----
       
        Next i
           
        TextStr.Close
    End If
   
End Sub

Danke im Voraus.


Mit freundlich Grüßen,

Mark

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: 14. Mai. 2018 10: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 M.Ungericht 10 Unities + Antwort hilfreich

Servus

Willkommen im Forum.
Entweder von jedem Punkt die Koordinaten messen (zB GetPoint) und die Abstände ausrechnen, oder gleich über GetMinimumDistancePoints die Koordinaten der Punkte bestimmen und berechnen (siehe auch hier)

Gruß
Bernd

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

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

M.Ungericht
Mitglied
Student

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

Beiträge: 9
Registriert: 14.05.2018

MS Windows 7 Professional
Catia V5 6R2017

erstellt am: 14. Mai. 2018 11: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

Hallo Bernd,


genau das war es was mir gefehlt hat, danke für die schnelle Antwort!


MfG

Mark

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