Autor
|
Thema: Abstand in einer bestimmten Richtung in Produkt Kontext abmessen. (860 mal gelesen)
|
ballazolo Mitglied Entwicklungsengineure
Beiträge: 36 Registriert: 20.08.2013 HP Z420 Intel(R), Xeon(R), CPU E5-1620, 3,60 GHz Arbeitsspeicher: 16GB
|
erstellt am: 11. Sep. 2020 19:53 <-- editieren / zitieren --> Unities abgeben:
|
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 11. Sep. 2020 20:10 <-- editieren / zitieren --> Unities abgeben: Nur für ballazolo
Servus Manuell geht das über die "Abstands- und Bandanalyse". Da kann man die Richtung für die Abstandmessung zwischen Produkten vorgeben (allerdings nur X, Y und Z-Richtung der Baugruppe). per Makro: siehe Distance-Objekt in der Doku. Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ballazolo Mitglied Entwicklungsengineure
Beiträge: 36 Registriert: 20.08.2013 HP Z420 Intel(R), Xeon(R), CPU E5-1620, 3,60 GHz Arbeitsspeicher: 16GB
|
erstellt am: 15. Sep. 2020 19:52 <-- editieren / zitieren --> Unities abgeben:
|
danilo.sl Mitglied Student
Beiträge: 9 Registriert: 08.09.2020
|
erstellt am: 24. Sep. 2020 14:33 <-- editieren / zitieren --> Unities abgeben: Nur für ballazolo
Hi ballazolo, ich stehe vor einem ähnlichen Problem. Hast du hierzu ein konkretes Beispiel wie das mit catDistanceMeasureTypeAlongX funktioniert? Beste Grüße Danilo [Diese Nachricht wurde von danilo.sl am 24. Sep. 2020 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ballazolo Mitglied Entwicklungsengineure
Beiträge: 36 Registriert: 20.08.2013 HP Z420 Intel(R), Xeon(R), CPU E5-1620, 3,60 GHz Arbeitsspeicher: 16GB
|
erstellt am: 24. Sep. 2020 16:00 <-- editieren / zitieren --> Unities abgeben:
Hallo Danilo.sl Ich habe es noch nicht umgesetzt, aber ich würde die zwei Bauteile mit einer der 3 Hauptrichtungen (z.B. X) überlappen und danach die entsprechende Methode benutzen (z.B. catDistanceMeasureTypeAlongX). Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 24. Sep. 2020 17:25 <-- editieren / zitieren --> Unities abgeben: Nur für ballazolo
Servus Danilo Hier ein kleines Beispiel: Code: Sub CATMain()Dim oProduct as Product Dim oSel as Selection Dim oDistances As Distances Dim oDistance As Distance Set oProduct = Catia.ActiveDocument.Product Set oSel = Catia.ActiveDocument.Selection oSel.Clear oSel.add oProduct.Products.Item(1) oSel.add oProduct.Products.Item(2) Set oDistances = oProduct.GetTechnologicalObject("Distances") Set oDistance = oDistances.AddFromSel oDistance.MeasureType = catDistanceMeasureTypeAlongZ oDistance.ComputationType = catDistanceComputationTypeInsideOne oDistance.Compute msgBox oDistance.Value oDistances.Remove(oDistances.Count) End Sub
Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lionel Hutz Mitglied
Beiträge: 363 Registriert: 26.03.2014 CATIA V5 R20
|
erstellt am: 25. Sep. 2020 07:54 <-- editieren / zitieren --> Unities abgeben: Nur für ballazolo
Ich habe mich gerade gefragt, ob man die Richtung auch vorgeben kann. Ja, kann man, indem man die Z-Achse der aktiven Komponente ausrichtet. Habe die unterschiedlichen MeasureTypes gefunden http://catiadoc.free.fr/online/interfaces/enum_CatDistanceMeasureType.htm
Code: enum CatDistanceMeasureType { catDistanceMeasureTypeMinimum, catDistanceMeasureTypeAlongX, catDistanceMeasureTypeAlongY, catDistanceMeasureTypeAlongZ, catDistanceMeasureTypeBand }
Was tut denn catDistanceMeasureTypeBand (The computation analyses the band between products)? Bei meinen kurzen Versuchen kommt das gleich mit TypeMinimum. Bei CatDistanceComputationType entspricht es etwa den Optionen von Contact/Clash:
Code: enum CatDistanceComputationType { catDistanceComputationTypeInsideOne, catDistanceComputationTypeAgainstAll, catDistanceComputationTypeBetweenTwo }
Und was ich noch interessant finde ist, dass ein Clash farbig markiert wird. Ich habe das Beispiel mal gepimpt, dass die Messung erhalten bleibt bis das Makro ein zweites Mal ausgeführt wird.
Code: Sub CATMain() Dim oProduct as Product Dim oSel as Selection Dim oDistances As Distances Dim oDistance As DistanceSet oProduct = Catia.ActiveDocument.Product Set oSel = Catia.ActiveDocument.Selection oSel.Clear oSel.add oProduct.Products.Item(1) oSel.add oProduct.Products.Item(2)
Set oDistances = oProduct.GetTechnologicalObject("Distances") If oDistances.Count > 0 Then oDistances.Remove(oDistances.Count) Exit Sub End If Set oDistance = oDistances.AddFromSel oDistance.MeasureType = catDistanceMeasureTypeAlongZ 'oDistance.MeasureType = catDistanceMeasureTypeBand oDistance.ComputationType = catDistanceComputationTypeInsideOne oDistance.Compute msgBox oDistance.Value 'oDistances.Remove(oDistances.Count) End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 25. Sep. 2020 08:38 <-- editieren / zitieren --> Unities abgeben: Nur für ballazolo
Servus Lionel Die Bandanalyse (catDistanceMeasureTypeBand) ist eher für eine visuelle Auswertung gedacht. Dabei werden definierbare Abstandsbereiche farbig eingefärbt. Von der Makroprogrammierung ist das wohl eher uninteressant, da AFAIK zB der Export fehlt bzw die Auswertung nur visuell statt findet. Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |