Autor
|
Thema: Messen, maximalen Abstand (1688 mal gelesen)
|
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 10. Nov. 2009 09:24 <-- editieren / zitieren --> Unities abgeben:
Hallo, kurze Frage: Kann es sein, dass es in der Standard-Programmierschnittstelle von CATIA V5 keine Methode für das Messen eines maximalen Abstands zw. zwei Elemente gibt? Wie realisiert man dann sowas? Wer programmier denn bitte eine Methode für "minimumDistance", aber keine für "maximumDistance". Bin mal gespannt, ob da jmd ein Tipp hat... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jens Hansen Mitglied Senior Consult
Beiträge: 1055 Registriert: 05.08.2000 Win7 CATIA V5 R19 VB.Net C#
|
erstellt am: 10. Nov. 2009 09:46 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
|
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 10. Nov. 2009 13:23 <-- editieren / zitieren --> Unities abgeben:
Hmm versteh ich nicht. Ich messe die MinimumDistance wie folgt: Code:
public static double measure_MinimumDistanceBetweenTwoElements(AnyObject element1, AnyObject element2) { string SPAWB = "SPAWorkbench"; double distance; SPAWorkbench TheSPAWorkbench = (SPAWorkbench)partDocument.GetWorkbench(ref SPAWB); Measurable ma1; Reference r1, r2; r1 = part.CreateReferenceFromObject(element1); r2 = part.CreateReferenceFromObject(element2); ma1 = TheSPAWorkbench.GetMeasurable(r1); distance = ma1.GetMinimumDistance(r2); return distance; }
aber Code:
distance = ma1.GetMaximumDistance(r2);
gibt es nicht.... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jens Hansen Mitglied Senior Consult
Beiträge: 1055 Registriert: 05.08.2000 Win7 CATIA V5 R19 VB.Net C#
|
erstellt am: 10. Nov. 2009 15:10 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
|
pittyplatsh Mitglied
Beiträge: 62 Registriert: 27.12.2008 CATIA V5 R16 SP3
|
erstellt am: 10. Nov. 2009 18:49 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
Mh... wenn du unbedingt die Maximale Distance messen möchtest wirst du das über einen Trick machen müssen (fällt mir jetzt mal spontan ein, würde aber nicht für Flächen funktionieren). Lasse per Macro auf beiden Elementen viele Punkte erzeugen, je mehr desto genauer die Messung, aber desto mehr Rechenkapazität notwendig. Dann jeden Punkt des einen Elementen zu allen Punkten des anderen Messen. Alle Werte zwischenspeichern und am Ende den betragsmäßig größten heraussuchen. Oder aber vlt aus möglich: Erzeuge mit Makro ein Produkt, schmeiß dass Part hinein, führe die Messung durch (sollte er dann ja hinbekommen, er befindet sich ja im Assembly) und anschließend löschst du das Produkt wieder. Wie gesagt ist das nur was mir auf die schnelle einfallen und was ich ausprobieren würde. Zwar nicht der feinste Weg, aber immerhin ein Weg Liebe Grüße, pitty Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 11. Nov. 2009 10:51 <-- editieren / zitieren --> Unities abgeben:
Mhh danke für die Tipps. Es ist echt schade, dass sich da jmd von Dassault ransetzt und ne Methode minDistance programmiert, aber maxDistance nicht. Nichts desto trotz, das mit den Punkten müsste gehen, allerdings viel zu viel Aufwand nur für die Bestimmung einer maximalen Distanz. Aber anders geht es wohl nicht. Leider. Dankeschön Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |